#[non_exhaustive]pub enum SymbolFlags<Section, Symbol> {
None,
Elf {
st_info: u8,
st_other: u8,
},
MachO {
n_desc: u16,
},
CoffSection {
selection: u8,
associative_section: Option<Section>,
},
Xcoff {
n_sclass: u8,
x_smtyp: u8,
x_smclas: u8,
containing_csect: Option<Symbol>,
},
}
Expand description
Symbol flags that are specific to each file format.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
None
No symbol flags.
Elf
ELF symbol flags.
MachO
Mach-O symbol flags.
Fields
§
n_desc: u16
n_desc
field in the Mach-O symbol.
CoffSection
COFF flags for a section symbol.
Fields
§
selection: u8
Selection
field in the auxiliary symbol for the section.
§
associative_section: Option<Section>
Number
field in the auxiliary symbol for the section.
Xcoff
XCOFF symbol flags.
Fields
§
n_sclass: u8
n_sclass
field in the XCOFF symbol.
§
x_smtyp: u8
x_smtyp
field in the CSECT auxiliary symbol.
Only valid if n_sclass
is C_EXT
, C_WEAKEXT
, or C_HIDEXT
.
§
x_smclas: u8
x_smclas
field in the CSECT auxiliary symbol.
Only valid if n_sclass
is C_EXT
, C_WEAKEXT
, or C_HIDEXT
.
§
containing_csect: Option<Symbol>
The containing csect for the symbol.
Only valid if x_smtyp
is XTY_LD
.
Trait Implementations§
Source§impl<Section: Clone, Symbol: Clone> Clone for SymbolFlags<Section, Symbol>
impl<Section: Clone, Symbol: Clone> Clone for SymbolFlags<Section, Symbol>
Source§fn clone(&self) -> SymbolFlags<Section, Symbol>
fn clone(&self) -> SymbolFlags<Section, Symbol>
Returns a copy of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<Section: Debug, Symbol: Debug> Debug for SymbolFlags<Section, Symbol>
impl<Section: Debug, Symbol: Debug> Debug for SymbolFlags<Section, Symbol>
Source§impl<Section: Hash, Symbol: Hash> Hash for SymbolFlags<Section, Symbol>
impl<Section: Hash, Symbol: Hash> Hash for SymbolFlags<Section, Symbol>
Source§impl<Section: PartialEq, Symbol: PartialEq> PartialEq for SymbolFlags<Section, Symbol>
impl<Section: PartialEq, Symbol: PartialEq> PartialEq for SymbolFlags<Section, Symbol>
impl<Section: Copy, Symbol: Copy> Copy for SymbolFlags<Section, Symbol>
impl<Section: Eq, Symbol: Eq> Eq for SymbolFlags<Section, Symbol>
impl<Section, Symbol> StructuralPartialEq for SymbolFlags<Section, Symbol>
Auto Trait Implementations§
impl<Section, Symbol> Freeze for SymbolFlags<Section, Symbol>where
Section: Freeze,
Symbol: Freeze,
impl<Section, Symbol> RefUnwindSafe for SymbolFlags<Section, Symbol>where
Section: RefUnwindSafe,
Symbol: RefUnwindSafe,
impl<Section, Symbol> Send for SymbolFlags<Section, Symbol>where
Section: Send,
Symbol: Send,
impl<Section, Symbol> Sync for SymbolFlags<Section, Symbol>where
Section: Sync,
Symbol: Sync,
impl<Section, Symbol> Unpin for SymbolFlags<Section, Symbol>where
Section: Unpin,
Symbol: Unpin,
impl<Section, Symbol> UnwindSafe for SymbolFlags<Section, Symbol>where
Section: UnwindSafe,
Symbol: UnwindSafe,
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dst: *mut u8)
unsafe fn clone_to_uninit(&self, dst: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)