Struct object::elf::SectionHeader32 [−][src]
#[repr(C)]pub struct SectionHeader32<E: Endian> { pub sh_name: U32<E>, pub sh_type: U32<E>, pub sh_flags: U32<E>, pub sh_addr: U32<E>, pub sh_offset: U32<E>, pub sh_size: U32<E>, pub sh_link: U32<E>, pub sh_info: U32<E>, pub sh_addralign: U32<E>, pub sh_entsize: U32<E>, }
Section header.
Fields
sh_name: U32<E>
Section name.
This is an offset into the section header string table.
sh_type: U32<E>
Section type. One of the SHT_*
constants.
sh_flags: U32<E>
Section flags. A combination of the SHF_*
constants.
sh_addr: U32<E>
Section virtual address at execution.
sh_offset: U32<E>
Section file offset.
sh_size: U32<E>
Section size in bytes.
sh_link: U32<E>
Link to another section.
The section relationship depends on the sh_type
value.
sh_info: U32<E>
Additional section information.
The meaning of this field depends on the sh_type
value.
sh_addralign: U32<E>
Section alignment.
sh_entsize: U32<E>
Entry size if the section holds a table.
Trait Implementations
impl<E: Clone + Endian> Clone for SectionHeader32<E>
[src]
impl<E: Clone + Endian> Clone for SectionHeader32<E>
[src]fn clone(&self) -> SectionHeader32<E>
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<E: Debug + Endian> Debug for SectionHeader32<E>
[src]
impl<E: Debug + Endian> Debug for SectionHeader32<E>
[src]impl<Endian: Endian> SectionHeader for SectionHeader32<Endian>
[src]
impl<Endian: Endian> SectionHeader for SectionHeader32<Endian>
[src]type Elf = FileHeader32<Endian>
type Word = u32
type Endian = Endian
fn sh_name(&self, endian: Self::Endian) -> u32
[src]
fn sh_type(&self, endian: Self::Endian) -> u32
[src]
fn sh_flags(&self, endian: Self::Endian) -> Self::Word
[src]
fn sh_addr(&self, endian: Self::Endian) -> Self::Word
[src]
fn sh_offset(&self, endian: Self::Endian) -> Self::Word
[src]
fn sh_size(&self, endian: Self::Endian) -> Self::Word
[src]
fn sh_link(&self, endian: Self::Endian) -> u32
[src]
fn sh_info(&self, endian: Self::Endian) -> u32
[src]
fn sh_addralign(&self, endian: Self::Endian) -> Self::Word
[src]
fn sh_entsize(&self, endian: Self::Endian) -> Self::Word
[src]
fn name<'data>(
&self,
endian: Self::Endian,
strings: StringTable<'data>
) -> Result<&'data [u8]>
[src]
&self,
endian: Self::Endian,
strings: StringTable<'data>
) -> Result<&'data [u8]>
fn file_range(&self, endian: Self::Endian) -> Option<(u64, u64)>
[src]
fn data<'data>(
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<Bytes<'data>, ()>
[src]
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<Bytes<'data>, ()>
fn data_as_array<'data, T: Pod>(
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<&'data [T], ()>
[src]
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<&'data [T], ()>
fn symbols<'data>(
&self,
endian: Self::Endian,
data: Bytes<'data>,
sections: &SectionTable<'_, Self::Elf>,
section_index: usize
) -> Result<Option<SymbolTable<'data, Self::Elf>>>
[src]
&self,
endian: Self::Endian,
data: Bytes<'data>,
sections: &SectionTable<'_, Self::Elf>,
section_index: usize
) -> Result<Option<SymbolTable<'data, Self::Elf>>>
fn rel<'data>(
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<Option<&'data [<Self::Elf as FileHeader>::Rel]>>
[src]
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<Option<&'data [<Self::Elf as FileHeader>::Rel]>>
fn rela<'data>(
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<Option<&'data [<Self::Elf as FileHeader>::Rela]>>
[src]
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<Option<&'data [<Self::Elf as FileHeader>::Rela]>>
fn relocation_symbols<'data>(
&self,
endian: Self::Endian,
data: Bytes<'data>,
sections: &SectionTable<'data, Self::Elf>
) -> Result<SymbolTable<'data, Self::Elf>>
[src]
&self,
endian: Self::Endian,
data: Bytes<'data>,
sections: &SectionTable<'data, Self::Elf>
) -> Result<SymbolTable<'data, Self::Elf>>
fn notes<'data>(
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<Option<NoteIterator<'data, Self::Elf>>>
[src]
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<Option<NoteIterator<'data, Self::Elf>>>
fn group<'data>(
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<Option<(u32, &'data [U32Bytes<Self::Endian>])>>
[src]
&self,
endian: Self::Endian,
data: Bytes<'data>
) -> Result<Option<(u32, &'data [U32Bytes<Self::Endian>])>>
impl<E: Copy + Endian> Copy for SectionHeader32<E>
[src]
impl<E: Endian> Pod for SectionHeader32<E>
[src]
Auto Trait Implementations
impl<E> Send for SectionHeader32<E> where
E: Send,
E: Send,
impl<E> Sync for SectionHeader32<E> where
E: Sync,
E: Sync,
impl<E> Unpin for SectionHeader32<E> where
E: Unpin,
E: Unpin,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
The resulting type after obtaining ownership.