pub trait Module {
fn base_address(&self) -> u64;
fn size(&self) -> u64;
fn code_file(&self) -> Cow<'_, str>;
fn code_identifier(&self) -> Option<CodeId>;
fn debug_file(&self) -> Option<Cow<'_, str>>;
fn debug_identifier(&self) -> Option<DebugId>;
fn version(&self) -> Option<Cow<'_, str>>;
}
Expand description
An executable or shared library loaded in a process.
Required methods
fn base_address(&self) -> u64
fn base_address(&self) -> u64
The base address of this code module as it was loaded by the process.
The path or file name that the code module was loaded from.
fn code_identifier(&self) -> Option<CodeId>
fn code_identifier(&self) -> Option<CodeId>
An identifying string used to discriminate between multiple versions and builds of the same code module. This may contain a uuid, timestamp, version number, or any combination of this or other information, in an implementation-defined format.
fn debug_file(&self) -> Option<Cow<'_, str>>
fn debug_file(&self) -> Option<Cow<'_, str>>
The filename containing debugging information associated with the code module. If debugging information is stored in a file separate from the code module itself (as is the case when .pdb or .dSYM files are used), this will be different from code_file. If debugging information is stored in the code module itself (possibly prior to stripping), this will be the same as code_file.
fn debug_identifier(&self) -> Option<DebugId>
fn debug_identifier(&self) -> Option<DebugId>
An identifying string similar to code_identifier, but identifies a specific version and build of the associated debug file. This may be the same as code_identifier when the debug_file and code_file are identical or when the same identifier is used to identify distinct debug and code files.
Implementations on Foreign Types
sourceimpl<'a> Module for (&'a str, DebugId)
impl<'a> Module for (&'a str, DebugId)
Implement Module for 2-tuples of (&str, DebugId) for convenience.
breakpad-symbols
’ Symbolizer::get_symbol_at_address
uses this.