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.