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 &'_ mut [u8]impl<'_> Write for &'_ mut [u8]impl<'_> Read for &'_ [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.