Struct backtracer_core::Symbol
source · [−]pub struct Symbol { /* private fields */ }
Expand description
A trait representing the resolution of a symbol in a file.
This trait is yielded as a trait object to the closure given to the
backtrace::resolve
function, and it is virtually dispatched as it’s
unknown which implementation is behind it.
A symbol can give contextual information about a function, for example the
name, filename, line number, precise address, etc. Not all information is
always available in a symbol, however, so all methods return an Option
.
Implementations
sourceimpl Symbol
impl Symbol
sourcepub fn name(&self) -> Option<Cow<'_, str>>
pub fn name(&self) -> Option<Cow<'_, str>>
Returns the name of this function.
The returned structure can be used to query various properties about the symbol name:
- The
Display
implementation will print out the demangled symbol. - The raw
str
value of the symbol can be accessed (if it’s valid utf-8). - The raw bytes for the symbol name can be accessed.
sourcepub fn filename(&self) -> Option<&str>
pub fn filename(&self) -> Option<&str>
Returns the file name where this function was defined.
This is currently only available when libbacktrace is being used (e.g.
unix platforms other than OSX) and when a binary is compiled with
debuginfo. If neither of these conditions is met then this will likely
return None
.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Symbol
impl !Send for Symbol
impl !Sync for Symbol
impl Unpin for Symbol
impl UnwindSafe for Symbol
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more