pub struct Symbol<'a> { /* private fields */ }
Expand description
Structure that represents a COFF symbol.
Warning: The crate::generic::Symbol::value
should be interpreted in perspective of
the Symbol::storage_class
.
Reference: https://learn.microsoft.com/en-us/windows/win32/debug/pe-format#coff-symbol-table
Implementations§
§impl Symbol<'_>
impl Symbol<'_>
pub fn auxiliary_symbols(&self) -> ItAuxiliarySymbols<'_> ⓘ
pub fn auxiliary_symbols(&self) -> ItAuxiliarySymbols<'_> ⓘ
Auxiliary symbols associated with this symbol.
pub fn storage_class(&self) -> StorageClass
pub fn storage_class(&self) -> StorageClass
Storage class of the symbol which indicates what kind of definition a symbol represents.
pub fn complex_type(&self) -> ComplexType
pub fn complex_type(&self) -> ComplexType
The complex type (if any)
pub fn section_idx(&self) -> i16
pub fn section_idx(&self) -> i16
The signed integer that identifies the section, using a one-based index into the section table. Some values have special meaning:
- 0: The symbol record is not yet assigned a section. A value of zero indicates that a reference to an external symbol is defined elsewhere. A value of non-zero is a common symbol with a size that is specified by the value.
- -1: The symbol has an absolute (non-relocatable) value and is not an address.
- -2: The symbol provides general type or debugging information but does
not correspond to a section. Microsoft tools use this setting along
with
.file
records
pub fn is_external(&self) -> bool
pub fn is_weak_external(&self) -> bool
pub fn is_undefined(&self) -> bool
pub fn is_function_line_info(&self) -> bool
pub fn is_absolute(&self) -> bool
pub fn is_file_record(&self) -> bool
pub fn is_function(&self) -> bool
pub fn demangled_name(&self) -> String
pub fn demangled_name(&self) -> String
Demangled representation of the symbol or an empty string if it can’t be demangled
Trait Implementations§
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for Symbol<'a>
impl<'a> !Send for Symbol<'a>
impl<'a> !Sync for Symbol<'a>
impl<'a> Unpin for Symbol<'a>
impl<'a> UnwindSafe for Symbol<'a>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more