Enum object::read::macho::LoadCommandVariant [−][src]
#[non_exhaustive]
pub enum LoadCommandVariant<'data, E: Endian> {
Show 33 variants
Segment32(&'data SegmentCommand32<E>, &'data [u8]),
Symtab(&'data SymtabCommand<E>),
Thread(&'data ThreadCommand<E>, &'data [u8]),
Dysymtab(&'data DysymtabCommand<E>),
Dylib(&'data DylibCommand<E>),
IdDylib(&'data DylibCommand<E>),
LoadDylinker(&'data DylinkerCommand<E>),
IdDylinker(&'data DylinkerCommand<E>),
PreboundDylib(&'data PreboundDylibCommand<E>),
Routines32(&'data RoutinesCommand32<E>),
SubFramework(&'data SubFrameworkCommand<E>),
SubUmbrella(&'data SubUmbrellaCommand<E>),
SubClient(&'data SubClientCommand<E>),
SubLibrary(&'data SubLibraryCommand<E>),
TwolevelHints(&'data TwolevelHintsCommand<E>),
PrebindCksum(&'data PrebindCksumCommand<E>),
Segment64(&'data SegmentCommand64<E>, &'data [u8]),
Routines64(&'data RoutinesCommand64<E>),
Uuid(&'data UuidCommand<E>),
Rpath(&'data RpathCommand<E>),
LinkeditData(&'data LinkeditDataCommand<E>),
EncryptionInfo32(&'data EncryptionInfoCommand32<E>),
DyldInfo(&'data DyldInfoCommand<E>),
VersionMin(&'data VersionMinCommand<E>),
DyldEnvironment(&'data DylinkerCommand<E>),
EntryPoint(&'data EntryPointCommand<E>),
SourceVersion(&'data SourceVersionCommand<E>),
EncryptionInfo64(&'data EncryptionInfoCommand64<E>),
LinkerOption(&'data LinkerOptionCommand<E>),
Note(&'data NoteCommand<E>),
BuildVersion(&'data BuildVersionCommand<E>),
FilesetEntry(&'data FilesetEntryCommand<E>),
Other,
}Expand description
A LoadCommand that has been interpreted according to its cmd field.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
Segment32(&'data SegmentCommand32<E>, &'data [u8])LC_SEGMENT
Tuple Fields of Segment32
0: &'data SegmentCommand32<E>1: &'data [u8]Symtab(&'data SymtabCommand<E>)LC_SYMTAB
Tuple Fields of Symtab
0: &'data SymtabCommand<E>Thread(&'data ThreadCommand<E>, &'data [u8])LC_THREAD or LC_UNIXTHREAD
Tuple Fields of Thread
0: &'data ThreadCommand<E>1: &'data [u8]Dysymtab(&'data DysymtabCommand<E>)LC_DYSYMTAB
Tuple Fields of Dysymtab
0: &'data DysymtabCommand<E>Dylib(&'data DylibCommand<E>)LC_LOAD_DYLIB, LC_LOAD_WEAK_DYLIB, LC_REEXPORT_DYLIB,
LC_LAZY_LOAD_DYLIB, or LC_LOAD_UPWARD_DYLIB
Tuple Fields of Dylib
0: &'data DylibCommand<E>IdDylib(&'data DylibCommand<E>)LC_ID_DYLIB
Tuple Fields of IdDylib
0: &'data DylibCommand<E>LoadDylinker(&'data DylinkerCommand<E>)LC_LOAD_DYLINKER
Tuple Fields of LoadDylinker
0: &'data DylinkerCommand<E>IdDylinker(&'data DylinkerCommand<E>)LC_ID_DYLINKER
Tuple Fields of IdDylinker
0: &'data DylinkerCommand<E>PreboundDylib(&'data PreboundDylibCommand<E>)LC_PREBOUND_DYLIB
Tuple Fields of PreboundDylib
0: &'data PreboundDylibCommand<E>Routines32(&'data RoutinesCommand32<E>)LC_ROUTINES
Tuple Fields of Routines32
0: &'data RoutinesCommand32<E>SubFramework(&'data SubFrameworkCommand<E>)LC_SUB_FRAMEWORK
Tuple Fields of SubFramework
0: &'data SubFrameworkCommand<E>SubUmbrella(&'data SubUmbrellaCommand<E>)LC_SUB_UMBRELLA
Tuple Fields of SubUmbrella
0: &'data SubUmbrellaCommand<E>SubClient(&'data SubClientCommand<E>)LC_SUB_CLIENT
Tuple Fields of SubClient
0: &'data SubClientCommand<E>SubLibrary(&'data SubLibraryCommand<E>)LC_SUB_LIBRARY
Tuple Fields of SubLibrary
0: &'data SubLibraryCommand<E>TwolevelHints(&'data TwolevelHintsCommand<E>)LC_TWOLEVEL_HINTS
Tuple Fields of TwolevelHints
0: &'data TwolevelHintsCommand<E>PrebindCksum(&'data PrebindCksumCommand<E>)LC_PREBIND_CKSUM
Tuple Fields of PrebindCksum
0: &'data PrebindCksumCommand<E>Segment64(&'data SegmentCommand64<E>, &'data [u8])LC_SEGMENT_64
Tuple Fields of Segment64
0: &'data SegmentCommand64<E>1: &'data [u8]Routines64(&'data RoutinesCommand64<E>)LC_ROUTINES_64
Tuple Fields of Routines64
0: &'data RoutinesCommand64<E>Uuid(&'data UuidCommand<E>)LC_UUID
Tuple Fields of Uuid
0: &'data UuidCommand<E>Rpath(&'data RpathCommand<E>)LC_RPATH
Tuple Fields of Rpath
0: &'data RpathCommand<E>LinkeditData(&'data LinkeditDataCommand<E>)LC_CODE_SIGNATURE, LC_SEGMENT_SPLIT_INFO, LC_FUNCTION_STARTS,
LC_DATA_IN_CODE, LC_DYLIB_CODE_SIGN_DRS, LC_LINKER_OPTIMIZATION_HINT,
LC_DYLD_EXPORTS_TRIE, or LC_DYLD_CHAINED_FIXUPS.
Tuple Fields of LinkeditData
0: &'data LinkeditDataCommand<E>EncryptionInfo32(&'data EncryptionInfoCommand32<E>)LC_ENCRYPTION_INFO
Tuple Fields of EncryptionInfo32
0: &'data EncryptionInfoCommand32<E>DyldInfo(&'data DyldInfoCommand<E>)LC_DYLD_INFO or LC_DYLD_INFO_ONLY
Tuple Fields of DyldInfo
0: &'data DyldInfoCommand<E>VersionMin(&'data VersionMinCommand<E>)LC_VERSION_MIN_MACOSX, LC_VERSION_MIN_IPHONEOS, LC_VERSION_MIN_WATCHOS,
or LC_VERSION_MIN_TVOS
Tuple Fields of VersionMin
0: &'data VersionMinCommand<E>DyldEnvironment(&'data DylinkerCommand<E>)LC_DYLD_ENVIRONMENT
Tuple Fields of DyldEnvironment
0: &'data DylinkerCommand<E>EntryPoint(&'data EntryPointCommand<E>)LC_MAIN
Tuple Fields of EntryPoint
0: &'data EntryPointCommand<E>SourceVersion(&'data SourceVersionCommand<E>)LC_SOURCE_VERSION
Tuple Fields of SourceVersion
0: &'data SourceVersionCommand<E>EncryptionInfo64(&'data EncryptionInfoCommand64<E>)LC_ENCRYPTION_INFO_64
Tuple Fields of EncryptionInfo64
0: &'data EncryptionInfoCommand64<E>LinkerOption(&'data LinkerOptionCommand<E>)LC_LINKER_OPTION
Tuple Fields of LinkerOption
0: &'data LinkerOptionCommand<E>Note(&'data NoteCommand<E>)LC_NOTE
Tuple Fields of Note
0: &'data NoteCommand<E>BuildVersion(&'data BuildVersionCommand<E>)LC_BUILD_VERSION
Tuple Fields of BuildVersion
0: &'data BuildVersionCommand<E>FilesetEntry(&'data FilesetEntryCommand<E>)LC_FILESET_ENTRY
Tuple Fields of FilesetEntry
0: &'data FilesetEntryCommand<E>An unrecognized or obsolete load command.
Trait Implementations
Auto Trait Implementations
impl<'data, E> RefUnwindSafe for LoadCommandVariant<'data, E> where
E: RefUnwindSafe,
impl<'data, E> Send for LoadCommandVariant<'data, E> where
E: Sync,
impl<'data, E> Sync for LoadCommandVariant<'data, E> where
E: Sync,
impl<'data, E> Unpin for LoadCommandVariant<'data, E>
impl<'data, E> UnwindSafe for LoadCommandVariant<'data, E> where
E: RefUnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more