pub trait SymbolReference {
// Required method
fn desc(&self) -> u16;
// Provided methods
fn ref_type(&self) -> u8 { ... }
fn is_ref_dyn(&self) -> bool { ... }
fn lib_ordinal(&self) -> u8 { ... }
fn is_no_dead_strip(&self) -> bool { ... }
fn is_discarded(&self) -> bool { ... }
fn is_weak_ref(&self) -> bool { ... }
fn is_weak_def(&self) -> bool { ... }
fn is_ref_to_weak(&self) -> bool { ... }
fn is_arm_thumb_def(&self) -> bool { ... }
fn is_resolver(&self) -> bool { ... }
fn is_alt_entry(&self) -> bool { ... }
}Expand description
Reference type and flags of symbol
Required Methods§
Provided Methods§
Sourcefn is_ref_dyn(&self) -> bool
fn is_ref_dyn(&self) -> bool
To simplify stripping of objects that use are used with the dynamic link editor, the static link editor marks the symbols defined an object that are referenced by a dynamicly bound object (dynamic shared libraries, bundles). With this marking strip knows not to strip these symbols.
Sourcefn lib_ordinal(&self) -> u8
fn lib_ordinal(&self) -> u8
The ordinal recorded references the libraries listed in the Mach-O file
Sourcefn is_no_dead_strip(&self) -> bool
fn is_no_dead_strip(&self) -> bool
symbol is not to be dead stripped
Sourcefn is_discarded(&self) -> bool
fn is_discarded(&self) -> bool
symbol is discarded
Sourcefn is_weak_ref(&self) -> bool
fn is_weak_ref(&self) -> bool
symbol is weak referenced
Sourcefn is_weak_def(&self) -> bool
fn is_weak_def(&self) -> bool
coalesed symbol is a weak definition
Sourcefn is_ref_to_weak(&self) -> bool
fn is_ref_to_weak(&self) -> bool
reference to a weak symbol
Sourcefn is_arm_thumb_def(&self) -> bool
fn is_arm_thumb_def(&self) -> bool
symbol is a Thumb function (ARM)
Sourcefn is_resolver(&self) -> bool
fn is_resolver(&self) -> bool
the function is actually a resolver function and should be called to get the address of the real function to use.
Sourcefn is_alt_entry(&self) -> bool
fn is_alt_entry(&self) -> bool
symbol is pinned to the previous content.