Trait object::read::ObjectSymbol
source · [−]pub trait ObjectSymbol<'data>: Sealed {
Show 16 methods
fn index(&self) -> SymbolIndex;
fn name_bytes(&self) -> Result<&'data [u8]>;
fn name(&self) -> Result<&'data str>;
fn address(&self) -> u64;
fn size(&self) -> u64;
fn kind(&self) -> SymbolKind;
fn section(&self) -> SymbolSection;
fn is_undefined(&self) -> bool;
fn is_definition(&self) -> bool;
fn is_common(&self) -> bool;
fn is_weak(&self) -> bool;
fn scope(&self) -> SymbolScope;
fn is_global(&self) -> bool;
fn is_local(&self) -> bool;
fn flags(&self) -> SymbolFlags<SectionIndex>;
fn section_index(&self) -> Option<SectionIndex> { ... }
}
Expand description
A symbol table entry.
Required methods
fn index(&self) -> SymbolIndex
fn index(&self) -> SymbolIndex
The index of the symbol.
The name of the symbol.
Returns an error if the name is not UTF-8.
fn kind(&self) -> SymbolKind
fn kind(&self) -> SymbolKind
Return the kind of this symbol.
fn section(&self) -> SymbolSection
fn section(&self) -> SymbolSection
Returns the section where the symbol is defined.
fn is_undefined(&self) -> bool
fn is_undefined(&self) -> bool
Return true if the symbol is undefined.
fn is_definition(&self) -> bool
fn is_definition(&self) -> bool
Return true if the symbol is a definition of a function or data object that has a known address.
Return true if the symbol is common data.
Note: does not check for SymbolSection::Section
with SectionKind::Common
.
fn scope(&self) -> SymbolScope
fn scope(&self) -> SymbolScope
Returns the symbol scope.
Return true if the symbol visible outside of the compilation unit.
This treats SymbolScope::Unknown
as global.
Return true if the symbol is only visible within the compilation unit.
fn flags(&self) -> SymbolFlags<SectionIndex>
fn flags(&self) -> SymbolFlags<SectionIndex>
Symbol flags that are specific to each file format.
Provided methods
fn section_index(&self) -> Option<SectionIndex>
fn section_index(&self) -> Option<SectionIndex>
Returns the section index for the section containing this symbol.
May return None
if the symbol is not defined in a section.