Struct object::read::macho::load_command::LoadCommandData

source ·
pub struct LoadCommandData<'data, E: Endian> {
    cmd: u32,
    data: Bytes<'data>,
    marker: PhantomData<E>,
}
Expand description

The data for a macho::LoadCommand.

Fields§

§cmd: u32§data: Bytes<'data>§marker: PhantomData<E>

Implementations§

source§

impl<'data, E: Endian> LoadCommandData<'data, E>

source

pub fn cmd(&self) -> u32

Return the cmd field of the macho::LoadCommand.

This is one of the LC_ constants.

source

pub fn cmdsize(&self) -> u32

Return the cmdsize field of the macho::LoadCommand.

source

pub fn data<T: Pod>(&self) -> Result<&'data T>

Parse the data as the given type.

source

pub fn raw_data(&self) -> &'data [u8]

Raw bytes of this macho::LoadCommand structure.

source

pub fn string(&self, endian: E, s: LcStr<E>) -> Result<&'data [u8]>

Parse a load command string value.

Strings used by load commands are specified by offsets that are relative to the load command header.

source

pub fn variant(&self) -> Result<LoadCommandVariant<'data, E>>

Parse the command data according to the cmd field.

source

pub fn segment_32( self, ) -> Result<Option<(&'data SegmentCommand32<E>, &'data [u8])>>

Try to parse this command as a macho::SegmentCommand32.

Returns the segment command and the data containing the sections.

source

pub fn symtab(self) -> Result<Option<&'data SymtabCommand<E>>>

Try to parse this command as a macho::SymtabCommand.

Returns the segment command and the data containing the sections.

source

pub fn dysymtab(self) -> Result<Option<&'data DysymtabCommand<E>>>

Try to parse this command as a macho::DysymtabCommand.

source

pub fn dylib(self) -> Result<Option<&'data DylibCommand<E>>>

Try to parse this command as a macho::DylibCommand.

source

pub fn uuid(self) -> Result<Option<&'data UuidCommand<E>>>

Try to parse this command as a macho::UuidCommand.

source

pub fn segment_64( self, ) -> Result<Option<(&'data SegmentCommand64<E>, &'data [u8])>>

Try to parse this command as a macho::SegmentCommand64.

source

pub fn dyld_info(self) -> Result<Option<&'data DyldInfoCommand<E>>>

Try to parse this command as a macho::DyldInfoCommand.

source

pub fn entry_point(self) -> Result<Option<&'data EntryPointCommand<E>>>

Try to parse this command as an macho::EntryPointCommand.

source

pub fn build_version(self) -> Result<Option<&'data BuildVersionCommand<E>>>

Try to parse this command as a macho::BuildVersionCommand.

Trait Implementations§

source§

impl<'data, E: Clone + Endian> Clone for LoadCommandData<'data, E>

source§

fn clone(&self) -> LoadCommandData<'data, E>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'data, E: Debug + Endian> Debug for LoadCommandData<'data, E>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'data, E: Copy + Endian> Copy for LoadCommandData<'data, E>

Auto Trait Implementations§

§

impl<'data, E> Freeze for LoadCommandData<'data, E>

§

impl<'data, E> RefUnwindSafe for LoadCommandData<'data, E>
where E: RefUnwindSafe,

§

impl<'data, E> Send for LoadCommandData<'data, E>
where E: Send,

§

impl<'data, E> Sync for LoadCommandData<'data, E>
where E: Sync,

§

impl<'data, E> Unpin for LoadCommandData<'data, E>
where E: Unpin,

§

impl<'data, E> UnwindSafe for LoadCommandData<'data, E>
where E: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.