pub trait Segment: Debug + Pod {
    type Word: Into<u64>;
    type Endian: Endian;
    type Section: Section<Endian = Self::Endian>;
Show 16 methods fn from_command(
        command: LoadCommandData<'_, Self::Endian>
    ) -> Result<Option<(&Self, &[u8])>>;
fn cmd(&self, endian: Self::Endian) -> u32;
fn cmdsize(&self, endian: Self::Endian) -> u32;
fn segname(&self) -> &[u8; 16];
fn vmaddr(&self, endian: Self::Endian) -> Self::Word;
fn vmsize(&self, endian: Self::Endian) -> Self::Word;
fn fileoff(&self, endian: Self::Endian) -> Self::Word;
fn filesize(&self, endian: Self::Endian) -> Self::Word;
fn maxprot(&self, endian: Self::Endian) -> u32;
fn initprot(&self, endian: Self::Endian) -> u32;
fn nsects(&self, endian: Self::Endian) -> u32;
fn flags(&self, endian: Self::Endian) -> u32; fn name(&self) -> &[u8]Notable traits for &'_ [u8]impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8] { ... }
fn file_range(&self, endian: Self::Endian) -> (u64, u64) { ... }
fn data<'data, R: ReadRef<'data>>(
        &self,
        endian: Self::Endian,
        data: R
    ) -> Result<&'data [u8], ()> { ... }
fn sections<'data, R: ReadRef<'data>>(
        &self,
        endian: Self::Endian,
        section_data: R
    ) -> Result<&'data [Self::Section]> { ... }
}
Expand description

A trait for generic access to SegmentCommand32 and SegmentCommand64.

Associated Types

Required methods

Provided methods

Return the segname bytes up until the null terminator.

Return the offset and size of the segment in the file.

Get the segment data from the file data.

Returns Err for invalid values.

Get the array of sections from the data following the segment command.

Returns Err for invalid values.

Implementors