Struct backtrace::Symbol
[−]
[src]
pub struct Symbol { /* fields omitted */ }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.
Methods
impl Symbol[src]
fn name(&self) -> Option<SymbolName>[src]
Returns the name of this function.
The returned structure can be used to query various properties about the symbol name:
- The
Displayimplementation will print out the demangled symbol. - The raw
strvalue of the symbol can be accessed (if it's valid utf-8). - The raw bytes for the symbol name can be accessed.
fn addr(&self) -> Option<*mut c_void>[src]
Returns the starting address of this function.
fn filename(&self) -> Option<&Path>[src]
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.
fn lineno(&self) -> Option<u32>[src]
Returns the line number for where this symbol is currently executing.
This return value is typically Some if filename returns Some, and
is consequently subject to similar caveats.