pub trait Section: Debug + Pod {
type Word: Into<u64>;
type Endian: Endian;
Show 14 methods
fn sectname(&self) -> &[u8; 16];
fn segname(&self) -> &[u8; 16];
fn addr(&self, endian: Self::Endian) -> Self::Word;
fn size(&self, endian: Self::Endian) -> Self::Word;
fn offset(&self, endian: Self::Endian) -> u32;
fn align(&self, endian: Self::Endian) -> u32;
fn reloff(&self, endian: Self::Endian) -> u32;
fn nreloc(&self, endian: Self::Endian) -> u32;
fn flags(&self, endian: Self::Endian) -> u32;
fn name(&self) -> &[u8]ⓘ { ... }
fn segment_name(&self) -> &[u8]ⓘ { ... }
fn file_range(&self, endian: Self::Endian) -> Option<(u64, u64)> { ... }
fn data<'data, R: ReadRef<'data>>(
&self,
endian: Self::Endian,
data: R
) -> Result<&'data [u8], ()> { ... }
fn relocations<'data, R: ReadRef<'data>>(
&self,
endian: Self::Endian,
data: R
) -> Result<&'data [Relocation<Self::Endian>]> { ... }
}
Expand description
A trait for generic access to Section32
and Section64
.
Associated Types
Required methods
Provided methods
Return the sectname
bytes up until the null terminator.
Return the segname
bytes up until the null terminator.
Return the offset and size of the section in the file.
Returns None
for sections that have no data in the file.
Return the section data.
Returns Ok(&[])
if the section has no data.
Returns Err
for invalid values.
fn relocations<'data, R: ReadRef<'data>>(
&self,
endian: Self::Endian,
data: R
) -> Result<&'data [Relocation<Self::Endian>]>
fn relocations<'data, R: ReadRef<'data>>(
&self,
endian: Self::Endian,
data: R
) -> Result<&'data [Relocation<Self::Endian>]>
Return the relocation array.
Returns Err
for invalid values.