pub struct MachoHeaderFlags(/* private fields */);Expand description
The MachoHeaderFlags flag value.
Implementations§
Source§impl MachoHeaderFlags
impl MachoHeaderFlags
Sourcepub const BINDATLOAD: Self
pub const BINDATLOAD: Self
The BINDATLOAD flag value.
Sourcepub const SPLIT_SEGS: Self
pub const SPLIT_SEGS: Self
The SPLIT_SEGS flag value.
Sourcepub const FORCE_FLAT: Self
pub const FORCE_FLAT: Self
The FORCE_FLAT flag value.
Sourcepub const NOMULTIDEFS: Self
pub const NOMULTIDEFS: Self
The NOMULTIDEFS flag value.
Sourcepub const NOFIXPREBINDING: Self
pub const NOFIXPREBINDING: Self
The NOFIXPREBINDING flag value.
Sourcepub const PREBINDABLE: Self
pub const PREBINDABLE: Self
The PREBINDABLE flag value.
Sourcepub const ALLMODSBOUND: Self
pub const ALLMODSBOUND: Self
The ALLMODSBOUND flag value.
Sourcepub const SUBSECTIONS_VIA_SYMBOLS: Self
pub const SUBSECTIONS_VIA_SYMBOLS: Self
The SUBSECTIONS_VIA_SYMBOLS flag value.
Sourcepub const WEAK_DEFINES: Self
pub const WEAK_DEFINES: Self
The WEAK_DEFINES flag value.
Sourcepub const BINDS_TO_WEAK: Self
pub const BINDS_TO_WEAK: Self
The BINDS_TO_WEAK flag value.
Sourcepub const ALLOW_STACK_EXECUTION: Self
pub const ALLOW_STACK_EXECUTION: Self
The ALLOW_STACK_EXECUTION flag value.
Sourcepub const SETUID_SAFE: Self
pub const SETUID_SAFE: Self
The SETUID_SAFE flag value.
Sourcepub const NO_REEXPORTED_DYLIBS: Self
pub const NO_REEXPORTED_DYLIBS: Self
The NO_REEXPORTED_DYLIBS flag value.
Sourcepub const DEAD_STRIPPABLE_DYLIB: Self
pub const DEAD_STRIPPABLE_DYLIB: Self
The DEAD_STRIPPABLE_DYLIB flag value.
Sourcepub const HAS_TLV_DESCRIPTORS: Self
pub const HAS_TLV_DESCRIPTORS: Self
The HAS_TLV_DESCRIPTORS flag value.
Sourcepub const NO_HEAP_EXECUTION: Self
pub const NO_HEAP_EXECUTION: Self
The NO_HEAP_EXECUTION flag value.
Sourcepub const APP_EXTENSION_SAFE: Self
pub const APP_EXTENSION_SAFE: Self
The APP_EXTENSION_SAFE flag value.
Sourcepub const NLIST_OUTOFSYNC_WITH_DYLDINFO: Self
pub const NLIST_OUTOFSYNC_WITH_DYLDINFO: Self
The NLIST_OUTOFSYNC_WITH_DYLDINFO flag value.
Sourcepub const SIM_SUPPORT: Self
pub const SIM_SUPPORT: Self
The SIM_SUPPORT flag value.
Sourcepub const IMPLICIT_PAGEZERO: Self
pub const IMPLICIT_PAGEZERO: Self
The IMPLICIT_PAGEZERO flag value.
Sourcepub const DYLIB_IN_CACHE: Self
pub const DYLIB_IN_CACHE: Self
The DYLIB_IN_CACHE flag value.
Source§impl MachoHeaderFlags
impl MachoHeaderFlags
Sourcepub const fn bits(&self) -> u32
pub const fn bits(&self) -> u32
Get the underlying bits value.
The returned value is exactly the bits set in this flags value.
Sourcepub const fn from_bits(bits: u32) -> Option<Self>
pub const fn from_bits(bits: u32) -> Option<Self>
Convert from a bits value.
This method will return None if any unknown bits are set.
Sourcepub const fn from_bits_truncate(bits: u32) -> Self
pub const fn from_bits_truncate(bits: u32) -> Self
Convert from a bits value, unsetting any unknown bits.
Sourcepub const fn from_bits_retain(bits: u32) -> Self
pub const fn from_bits_retain(bits: u32) -> Self
Convert from a bits value exactly.
Sourcepub fn from_name(name: &str) -> Option<Self>
pub fn from_name(name: &str) -> Option<Self>
Get a flags value with the bits of a flag with the given name set.
This method will return None if name is empty or doesn’t
correspond to any named flag.
Sourcepub const fn intersects(&self, other: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Whether any set bits in a source flags value are also set in a target flags value.
Sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Whether all set bits in a source flags value are also set in a target flags value.
Sourcepub fn remove(&mut self, other: Self)
pub fn remove(&mut self, other: Self)
The intersection of a source flags value with the complement of a target flags
value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
remove won’t truncate other, but the ! operator will.
Sourcepub fn toggle(&mut self, other: Self)
pub fn toggle(&mut self, other: Self)
The bitwise exclusive-or (^) of the bits in two flags values.
Sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Call insert when value is true or remove when value is false.
Sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
The bitwise and (&) of the bits in two flags values.
Sourcepub const fn union(self, other: Self) -> Self
pub const fn union(self, other: Self) -> Self
The bitwise or (|) of the bits in two flags values.
Sourcepub const fn difference(self, other: Self) -> Self
pub const fn difference(self, other: Self) -> Self
The intersection of a source flags value with the complement of a target flags
value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
Sourcepub const fn symmetric_difference(self, other: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
The bitwise exclusive-or (^) of the bits in two flags values.
Sourcepub const fn complement(self) -> Self
pub const fn complement(self) -> Self
The bitwise negation (!) of the bits in a flags value, truncating the result.
Source§impl MachoHeaderFlags
impl MachoHeaderFlags
Sourcepub const fn iter(&self) -> Iter<MachoHeaderFlags> ⓘ
pub const fn iter(&self) -> Iter<MachoHeaderFlags> ⓘ
Yield a set of contained flags values.
Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.
Sourcepub const fn iter_names(&self) -> IterNames<MachoHeaderFlags> ⓘ
pub const fn iter_names(&self) -> IterNames<MachoHeaderFlags> ⓘ
Yield a set of contained named flags values.
This method is like iter, except only yields bits in contained named flags.
Any unknown bits, or bits not corresponding to a contained flag will not be yielded.
Trait Implementations§
Source§impl Binary for MachoHeaderFlags
impl Binary for MachoHeaderFlags
Source§impl BitAnd for MachoHeaderFlags
impl BitAnd for MachoHeaderFlags
Source§impl BitAndAssign for MachoHeaderFlags
impl BitAndAssign for MachoHeaderFlags
Source§fn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
The bitwise and (&) of the bits in two flags values.
Source§impl BitOr for MachoHeaderFlags
impl BitOr for MachoHeaderFlags
Source§fn bitor(self, other: MachoHeaderFlags) -> Self
fn bitor(self, other: MachoHeaderFlags) -> Self
The bitwise or (|) of the bits in two flags values.
Source§type Output = MachoHeaderFlags
type Output = MachoHeaderFlags
| operator.Source§impl BitOrAssign for MachoHeaderFlags
impl BitOrAssign for MachoHeaderFlags
Source§fn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
The bitwise or (|) of the bits in two flags values.
Source§impl BitXor for MachoHeaderFlags
impl BitXor for MachoHeaderFlags
Source§impl BitXorAssign for MachoHeaderFlags
impl BitXorAssign for MachoHeaderFlags
Source§fn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
The bitwise exclusive-or (^) of the bits in two flags values.
Source§impl Clone for MachoHeaderFlags
impl Clone for MachoHeaderFlags
impl Copy for MachoHeaderFlags
Source§impl Debug for MachoHeaderFlags
impl Debug for MachoHeaderFlags
impl Eq for MachoHeaderFlags
Source§impl Extend<MachoHeaderFlags> for MachoHeaderFlags
impl Extend<MachoHeaderFlags> for MachoHeaderFlags
Source§fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
The bitwise or (|) of the bits in each flags value.
Source§fn extend_one(&mut self, item: T)
fn extend_one(&mut self, item: T)
extend_one)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one)Source§impl Flags for MachoHeaderFlags
impl Flags for MachoHeaderFlags
Source§const FLAGS: &'static [Flag<MachoHeaderFlags>]
const FLAGS: &'static [Flag<MachoHeaderFlags>]
Source§fn from_bits_retain(bits: u32) -> MachoHeaderFlags
fn from_bits_retain(bits: u32) -> MachoHeaderFlags
Source§fn known_bits(&self) -> Self::Bits
fn known_bits(&self) -> Self::Bits
Source§fn unknown_bits(&self) -> Self::Bits
fn unknown_bits(&self) -> Self::Bits
Source§fn contains_unknown_bits(&self) -> bool
fn contains_unknown_bits(&self) -> bool
true if any unknown bits are set.Source§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
Source§fn from_name(name: &str) -> Option<Self>
fn from_name(name: &str) -> Option<Self>
Source§fn iter_names(&self) -> IterNames<Self> ⓘ
fn iter_names(&self) -> IterNames<Self> ⓘ
Source§fn iter_defined_names() -> IterDefinedNames<Self> ⓘ
fn iter_defined_names() -> IterDefinedNames<Self> ⓘ
Self::FLAGS.Source§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
Source§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
Source§fn insert(&mut self, other: Self)where
Self: Sized,
fn insert(&mut self, other: Self)where
Self: Sized,
|) of the bits in two flags values.Source§fn remove(&mut self, other: Self)where
Self: Sized,
fn remove(&mut self, other: Self)where
Self: Sized,
&!). Read moreSource§fn toggle(&mut self, other: Self)where
Self: Sized,
fn toggle(&mut self, other: Self)where
Self: Sized,
^) of the bits in two flags values.Source§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&) of the bits in two flags values.Source§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
&!). Read moreSource§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^) of the bits in two flags values.Source§fn complement(self) -> Self
fn complement(self) -> Self
!) of the bits in a flags value, truncating the result.Source§impl FromIterator<MachoHeaderFlags> for MachoHeaderFlags
impl FromIterator<MachoHeaderFlags> for MachoHeaderFlags
Source§fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
The bitwise or (|) of the bits in each flags value.
Source§impl IntoIterator for MachoHeaderFlags
impl IntoIterator for MachoHeaderFlags
Source§impl LowerHex for MachoHeaderFlags
impl LowerHex for MachoHeaderFlags
Source§impl Not for MachoHeaderFlags
impl Not for MachoHeaderFlags
Source§impl Octal for MachoHeaderFlags
impl Octal for MachoHeaderFlags
Source§impl PartialEq for MachoHeaderFlags
impl PartialEq for MachoHeaderFlags
Source§impl PublicFlags for MachoHeaderFlags
impl PublicFlags for MachoHeaderFlags
impl StructuralPartialEq for MachoHeaderFlags
Source§impl Sub for MachoHeaderFlags
impl Sub for MachoHeaderFlags
Source§fn sub(self, other: Self) -> Self
fn sub(self, other: Self) -> Self
The intersection of a source flags value with the complement of a target flags value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
Source§type Output = MachoHeaderFlags
type Output = MachoHeaderFlags
- operator.Source§impl SubAssign for MachoHeaderFlags
impl SubAssign for MachoHeaderFlags
Source§fn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
The intersection of a source flags value with the complement of a target flags value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.