pub trait ObjectSymbol<'data>: Sealed {
Show 16 methods
    // Required 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, SymbolIndex>;
    // Provided method
    fn section_index(&self) -> Option<SectionIndex> { ... }
}Expand description
A symbol table entry in an Object.
This trait is part of the unified read API.
Required Methods§
Sourcefn index(&self) -> SymbolIndex
 
fn index(&self) -> SymbolIndex
The index of the symbol.
Sourcefn name_bytes(&self) -> Result<&'data [u8]>
 
fn name_bytes(&self) -> Result<&'data [u8]>
The name of the symbol.
Sourcefn name(&self) -> Result<&'data str>
 
fn name(&self) -> Result<&'data str>
The name of the symbol.
Returns an error if the name is not UTF-8.
Sourcefn kind(&self) -> SymbolKind
 
fn kind(&self) -> SymbolKind
Return the kind of this symbol.
Sourcefn section(&self) -> SymbolSection
 
fn section(&self) -> SymbolSection
Returns the section where the symbol is defined.
Sourcefn is_undefined(&self) -> bool
 
fn is_undefined(&self) -> bool
Return true if the symbol is undefined.
Sourcefn 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.
This is primarily used to implement Object::symbol_map.
Sourcefn is_common(&self) -> bool
 
fn is_common(&self) -> bool
Return true if the symbol is common data.
Note: does not check for SymbolSection::Section with SectionKind::Common.
Sourcefn scope(&self) -> SymbolScope
 
fn scope(&self) -> SymbolScope
Returns the symbol scope.
Sourcefn is_global(&self) -> bool
 
fn is_global(&self) -> bool
Return true if the symbol visible outside of the compilation unit.
This treats SymbolScope::Unknown as global.
Sourcefn is_local(&self) -> bool
 
fn is_local(&self) -> bool
Return true if the symbol is only visible within the compilation unit.
Sourcefn flags(&self) -> SymbolFlags<SectionIndex, SymbolIndex>
 
fn flags(&self) -> SymbolFlags<SectionIndex, SymbolIndex>
Symbol flags that are specific to each file format.
Provided Methods§
Sourcefn 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.