pub trait Module {
    // Required methods
    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§

source

fn base_address(&self) -> u64

The base address of this code module as it was loaded by the process.

source

fn size(&self) -> u64

The size of the code module.

source

fn code_file(&self) -> Cow<'_, str>

The path or file name that the code module was loaded from.

source

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.

source

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.

source

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.

source

fn version(&self) -> Option<Cow<'_, str>>

A human-readable representation of the code module’s version.

Implementations on Foreign Types§

source§

impl<'a> Module for (&'a str, DebugId)

Implement Module for 2-tuples of (&str, DebugId) for convenience. breakpad-symbolsSymbolizer::get_symbol_at_address uses this.

Implementors§