Struct SectionHeader64

struct SectionHeader64<E: Endian> { ... }

Section header.

Fields

sh_name: crate::endian::U32<E>

Section name.

This is an offset into the section header string table.

sh_type: crate::endian::U32<E>

Section type. One of the SHT_* constants.

sh_flags: crate::endian::U64<E>

Section flags. A combination of the SHF_* constants.

sh_addr: crate::endian::U64<E>

Section virtual address at execution.

sh_offset: crate::endian::U64<E>

Section file offset.

sh_size: crate::endian::U64<E>

Section size in bytes.

sh_link: crate::endian::U32<E>

Link to another section.

The section relationship depends on the sh_type value.

sh_info: crate::endian::U32<E>

Additional section information.

The meaning of this field depends on the sh_type value.

sh_addralign: crate::endian::U64<E>

Section alignment.

sh_entsize: crate::endian::U64<E>

Entry size if the section holds a table.

Implementations

impl<E> Freeze for SectionHeader64<E>

impl<E> RefUnwindSafe for SectionHeader64<E>

impl<E> Send for SectionHeader64<E>

impl<E> Sync for SectionHeader64<E>

impl<E> Unpin for SectionHeader64<E>

impl<E> UnwindSafe for SectionHeader64<E>

impl<E: $crate::clone::Clone + Endian> Clone for SectionHeader64<E>

fn clone(self: &Self) -> SectionHeader64<E>

impl<E: $crate::fmt::Debug + Endian> Debug for SectionHeader64<E>

fn fmt(self: &Self, f: &mut $crate::fmt::Formatter<'_>) -> $crate::fmt::Result

impl<E: $crate::marker::Copy + Endian> Copy for SectionHeader64<E>

impl<E: Endian> Pod for SectionHeader64<E>

impl<Endian: endian::Endian> SectionHeader for elf::SectionHeader64<Endian>

fn sh_name(self: &Self, endian: <Self as >::Endian) -> u32
fn sh_type(self: &Self, endian: <Self as >::Endian) -> u32
fn sh_flags(self: &Self, endian: <Self as >::Endian) -> <Self as >::Word
fn sh_addr(self: &Self, endian: <Self as >::Endian) -> <Self as >::Word
fn sh_offset(self: &Self, endian: <Self as >::Endian) -> <Self as >::Word
fn sh_size(self: &Self, endian: <Self as >::Endian) -> <Self as >::Word
fn sh_link(self: &Self, endian: <Self as >::Endian) -> u32
fn sh_info(self: &Self, endian: <Self as >::Endian) -> u32
fn sh_addralign(self: &Self, endian: <Self as >::Endian) -> <Self as >::Word
fn sh_entsize(self: &Self, endian: <Self as >::Endian) -> <Self as >::Word

impl<T> Any for SectionHeader64<E>

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for SectionHeader64<E>

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for SectionHeader64<E>

fn borrow_mut(self: &mut Self) -> &mut T

impl<T> CloneToUninit for SectionHeader64<E>

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> From for SectionHeader64<E>

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> ToOwned for SectionHeader64<E>

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T, U> Into for SectionHeader64<E>

fn into(self: Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom for SectionHeader64<E>

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto for SectionHeader64<E>

fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>