pub struct Symbol {
pub name: String,
pub version: Option<String>,
pub default_version: Option<bool>,
pub symbol_type: u8,
pub binding: u8,
pub visibility: u8,
pub section: u16,
pub section_alignment: u64,
pub value: u64,
pub size: u64,
pub same_range: Option<usize>,
}Expand description
One defined dynamic symbol of a shared object, with its GNU symbol version.
Fields§
§name: StringThe symbol name, without a version suffix.
version: Option<String>The version node’s name, such as GLIBC_2.17; None when unversioned.
default_version: Option<bool>None for unversioned symbols; false for GNU nondefault versions.
symbol_type: u8The ELF symbol type (STT_*): 1 object, 2 function, 6 TLS, 10 IFUNC.
binding: u8The ELF binding (STB_*): 1 global, 2 weak.
visibility: u8The ELF visibility (STV_*): 0 default, 3 protected.
section: u16The defining section’s index (st_shndx).
section_alignment: u64Declared alignment of the defining section; zero for special indexes.
value: u64The symbol’s value (st_value): its address in the file’s layout.
size: u64The symbol’s size in bytes (st_size).
same_range: Option<usize>Same section/value/type/size in this file, not a proven semantic alias.
Trait Implementations§
impl Eq for Symbol
Source§impl Ord for Symbol
impl Ord for Symbol
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
Source§impl PartialOrd for Symbol
impl PartialOrd for Symbol
impl StructuralPartialEq for Symbol
Auto Trait Implementations§
impl Freeze for Symbol
impl RefUnwindSafe for Symbol
impl Send for Symbol
impl Sync for Symbol
impl Unpin for Symbol
impl UnsafeUnpin for Symbol
impl UnwindSafe for Symbol
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