Enum llvm_sys::LLVMModuleFlagBehavior
source · [−]#[repr(C)]
pub enum LLVMModuleFlagBehavior {
LLVMModuleFlagBehaviorError,
LLVMModuleFlagBehaviorWarning,
LLVMModuleFlagBehaviorRequire,
LLVMModuleFlagBehaviorOverride,
LLVMModuleFlagBehaviorAppend,
LLVMModuleFlagBehaviorAppendUnique,
}
Variants
LLVMModuleFlagBehaviorError
Emits an error if two values disagree, otherwise the resulting value is that of the operands.
LLVMModuleFlagBehaviorWarning
Emits a warning if two values disagree. The result value will be the operand for the flag from the first module being linked.
LLVMModuleFlagBehaviorRequire
Adds a requirement that another module flag be present and have a specified value after linking is performed. The value must be a metadata pair, where the first element of the pair is the ID of the module flag to be restricted, and the second element of the pair is the value the module flag should be restricted to. This behavior can be used to restrict the allowable results (via triggering of an error) of linking IDs with the Override behavior.
LLVMModuleFlagBehaviorOverride
Uses the specified value, regardless of the behavior or value of the other module. If both modules specify Override, but the values differ, an error will be emitted.
LLVMModuleFlagBehaviorAppend
Appends the two values, which are required to be metadata nodes.
LLVMModuleFlagBehaviorAppendUnique
Appends the two values, which are required to be metadata nodes. However, duplicate entries in the second list are dropped during the append operation.
Trait Implementations
sourceimpl Clone for LLVMModuleFlagBehavior
impl Clone for LLVMModuleFlagBehavior
sourcefn clone(&self) -> LLVMModuleFlagBehavior
fn clone(&self) -> LLVMModuleFlagBehavior
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for LLVMModuleFlagBehavior
impl Debug for LLVMModuleFlagBehavior
sourceimpl PartialEq<LLVMModuleFlagBehavior> for LLVMModuleFlagBehavior
impl PartialEq<LLVMModuleFlagBehavior> for LLVMModuleFlagBehavior
sourcefn eq(&self, other: &LLVMModuleFlagBehavior) -> bool
fn eq(&self, other: &LLVMModuleFlagBehavior) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
impl Copy for LLVMModuleFlagBehavior
impl StructuralPartialEq for LLVMModuleFlagBehavior
Auto Trait Implementations
impl RefUnwindSafe for LLVMModuleFlagBehavior
impl Send for LLVMModuleFlagBehavior
impl Sync for LLVMModuleFlagBehavior
impl Unpin for LLVMModuleFlagBehavior
impl UnwindSafe for LLVMModuleFlagBehavior
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more