object::read

Trait ObjectSymbolTable

Source
pub trait ObjectSymbolTable<'data>: Sealed {
    type Symbol: ObjectSymbol<'data>;
    type SymbolIterator: Iterator<Item = Self::Symbol>;

    // Required methods
    fn symbols(&self) -> Self::SymbolIterator;
    fn symbol_by_index(&self, index: SymbolIndex) -> Result<Self::Symbol>;
}
Expand description

A symbol table.

Required Associated Types§

Source

type Symbol: ObjectSymbol<'data>

A symbol table entry.

Source

type SymbolIterator: Iterator<Item = Self::Symbol>

An iterator over the symbols in a symbol table.

Required Methods§

Source

fn symbols(&self) -> Self::SymbolIterator

Get an iterator over the symbols in the table.

This may skip over symbols that are malformed or unsupported.

Source

fn symbol_by_index(&self, index: SymbolIndex) -> Result<Self::Symbol>

Get the symbol at the given index.

The meaning of the index depends on the object file.

Returns an error if the index is invalid.

Implementors§

Source§

impl<'data, 'file, Elf: FileHeader, R: ReadRef<'data>> ObjectSymbolTable<'data> for ElfSymbolTable<'data, 'file, Elf, R>

Source§

type Symbol = ElfSymbol<'data, 'file, Elf, R>

Source§

type SymbolIterator = ElfSymbolIterator<'data, 'file, Elf, R>

Source§

impl<'data, 'file, Mach, R> ObjectSymbolTable<'data> for MachOSymbolTable<'data, 'file, Mach, R>
where Mach: MachHeader, R: ReadRef<'data>,

Source§

type Symbol = MachOSymbol<'data, 'file, Mach, R>

Source§

type SymbolIterator = MachOSymbolIterator<'data, 'file, Mach, R>

Source§

impl<'data, 'file, R: ReadRef<'data>> ObjectSymbolTable<'data> for CoffSymbolTable<'data, 'file, R>

Source§

type Symbol = CoffSymbol<'data, 'file, R>

Source§

type SymbolIterator = CoffSymbolIterator<'data, 'file, R>

Source§

impl<'data, 'file, R: ReadRef<'data>> ObjectSymbolTable<'data> for SymbolTable<'data, 'file, R>

Source§

type Symbol = Symbol<'data, 'file, R>

Source§

type SymbolIterator = SymbolIterator<'data, 'file, R>