[−][src]Struct object::read::elf::ElfFile
A partially parsed ELF file.
Most of the functionality of this type is provided by the Object
trait implementation.
Implementations
impl<'data, Elf: FileHeader> ElfFile<'data, Elf>
[src]
Trait Implementations
impl<'data, Elf: Debug + FileHeader> Debug for ElfFile<'data, Elf> where
Elf::Endian: Debug,
Elf::ProgramHeader: Debug,
[src]
Elf::Endian: Debug,
Elf::ProgramHeader: Debug,
impl<'data, 'file, Elf> Object<'data, 'file> for ElfFile<'data, Elf> where
'data: 'file,
Elf: FileHeader,
[src]
'data: 'file,
Elf: FileHeader,
type Segment = ElfSegment<'data, 'file, Elf>
A segment in the object file.
type SegmentIterator = ElfSegmentIterator<'data, 'file, Elf>
An iterator over the segments in the object file.
type Section = ElfSection<'data, 'file, Elf>
A section in the object file.
type SectionIterator = ElfSectionIterator<'data, 'file, Elf>
An iterator over the sections in the object file.
type SymbolIterator = ElfSymbolIterator<'data, 'file, Elf>
An iterator over the symbols in the object file.
fn architecture(&self) -> Architecture
[src]
fn is_little_endian(&self) -> bool
[src]
fn is_64(&self) -> bool
[src]
fn segments(&'file self) -> ElfSegmentIterator<'data, 'file, Elf>ⓘNotable traits for ElfSegmentIterator<'data, 'file, Elf>
impl<'data, 'file, Elf: FileHeader> Iterator for ElfSegmentIterator<'data, 'file, Elf> type Item = ElfSegment<'data, 'file, Elf>;
[src]
Notable traits for ElfSegmentIterator<'data, 'file, Elf>
impl<'data, 'file, Elf: FileHeader> Iterator for ElfSegmentIterator<'data, 'file, Elf> type Item = ElfSegment<'data, 'file, Elf>;
fn section_by_name(
&'file self,
section_name: &str
) -> Option<ElfSection<'data, 'file, Elf>>
[src]
&'file self,
section_name: &str
) -> Option<ElfSection<'data, 'file, Elf>>
fn section_by_index(
&'file self,
index: SectionIndex
) -> Result<ElfSection<'data, 'file, Elf>>
[src]
&'file self,
index: SectionIndex
) -> Result<ElfSection<'data, 'file, Elf>>
fn sections(&'file self) -> ElfSectionIterator<'data, 'file, Elf>ⓘNotable traits for ElfSectionIterator<'data, 'file, Elf>
impl<'data, 'file, Elf: FileHeader> Iterator for ElfSectionIterator<'data, 'file, Elf> type Item = ElfSection<'data, 'file, Elf>;
[src]
Notable traits for ElfSectionIterator<'data, 'file, Elf>
impl<'data, 'file, Elf: FileHeader> Iterator for ElfSectionIterator<'data, 'file, Elf> type Item = ElfSection<'data, 'file, Elf>;
fn symbol_by_index(&self, index: SymbolIndex) -> Result<Symbol<'data>>
[src]
fn symbols(&'file self) -> ElfSymbolIterator<'data, 'file, Elf>ⓘNotable traits for ElfSymbolIterator<'data, 'file, Elf>
impl<'data, 'file, Elf: FileHeader> Iterator for ElfSymbolIterator<'data, 'file, Elf> type Item = (SymbolIndex, Symbol<'data>);
[src]
Notable traits for ElfSymbolIterator<'data, 'file, Elf>
impl<'data, 'file, Elf: FileHeader> Iterator for ElfSymbolIterator<'data, 'file, Elf> type Item = (SymbolIndex, Symbol<'data>);
fn dynamic_symbols(&'file self) -> ElfSymbolIterator<'data, 'file, Elf>ⓘNotable traits for ElfSymbolIterator<'data, 'file, Elf>
impl<'data, 'file, Elf: FileHeader> Iterator for ElfSymbolIterator<'data, 'file, Elf> type Item = (SymbolIndex, Symbol<'data>);
[src]
Notable traits for ElfSymbolIterator<'data, 'file, Elf>
impl<'data, 'file, Elf: FileHeader> Iterator for ElfSymbolIterator<'data, 'file, Elf> type Item = (SymbolIndex, Symbol<'data>);
fn symbol_map(&self) -> SymbolMap<'data>
[src]
fn has_debug_symbols(&self) -> bool
[src]
fn build_id(&self) -> Result<Option<&'data [u8]>>
[src]
fn gnu_debuglink(&self) -> Result<Option<(&'data [u8], u32)>>
[src]
fn entry(&self) -> u64
[src]
fn flags(&self) -> FileFlags
[src]
fn endianness(&self) -> Endianness
[src]
fn symbol_data(
&'file self,
symbol: &Symbol<'data>
) -> Result<Option<&'data [u8]>>
[src]
&'file self,
symbol: &Symbol<'data>
) -> Result<Option<&'data [u8]>>
fn mach_uuid(&self) -> Result<Option<[u8; 16]>>
[src]
Auto Trait Implementations
impl<'data, Elf> Send for ElfFile<'data, Elf> where
Elf: Sync,
<Elf as FileHeader>::Endian: Send,
<Elf as FileHeader>::ProgramHeader: Sync,
<Elf as FileHeader>::SectionHeader: Sync,
<Elf as FileHeader>::Sym: Sync,
Elf: Sync,
<Elf as FileHeader>::Endian: Send,
<Elf as FileHeader>::ProgramHeader: Sync,
<Elf as FileHeader>::SectionHeader: Sync,
<Elf as FileHeader>::Sym: Sync,
impl<'data, Elf> Sync for ElfFile<'data, Elf> where
Elf: Sync,
<Elf as FileHeader>::Endian: Sync,
<Elf as FileHeader>::ProgramHeader: Sync,
<Elf as FileHeader>::SectionHeader: Sync,
<Elf as FileHeader>::Sym: Sync,
Elf: Sync,
<Elf as FileHeader>::Endian: Sync,
<Elf as FileHeader>::ProgramHeader: Sync,
<Elf as FileHeader>::SectionHeader: Sync,
<Elf as FileHeader>::Sym: Sync,
impl<'data, Elf> Unpin for ElfFile<'data, Elf> where
<Elf as FileHeader>::Endian: Unpin,
<Elf as FileHeader>::Endian: Unpin,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,