Enum goblin::mach::exports::ExportInfo
source · pub enum ExportInfo<'a> {
Regular {
address: u64,
flags: u64,
},
Reexport {
lib: &'a str,
lib_symbol_name: Option<&'a str>,
flags: u64,
},
Stub {
stub_offset: Uleb128,
resolver_offset: Uleb128,
flags: u64,
},
}
Expand description
An export can be a regular export, a re-export, or a stub
Variants§
Regular
A regular exported symbol, which is an address where it is found, and the flags associated with it
Reexport
if lib_symbol_name None then same symbol name, otherwise reexport of lib_symbol_name with name in the trie “If the string is zero length, then the symbol is re-export from the specified dylib with the same name”
Stub
If the flags is EXPORT_SYMBOL_FLAGS_STUB_AND_RESOLVER
, then following the flags are two Uleb128
s: the stub offset and the resolver offset. The stub is used by non-lazy pointers. The resolver is used by lazy pointers and must be called to get the actual address to use
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl<'a> RefUnwindSafe for ExportInfo<'a>
impl<'a> Send for ExportInfo<'a>
impl<'a> Sync for ExportInfo<'a>
impl<'a> Unpin for ExportInfo<'a>
impl<'a> UnwindSafe for ExportInfo<'a>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more