class Symbolizer
Defined at line 17 of file ../../tools/symbolizer/symbolizer.h
This is the core logic of the symbolizer. The implementation is separated from the interface here
for better testing.
Public Methods
void Reset (bool symbolizing_dart, ResetType type)
{{{reset}}}, {{{reset:begin}}}, {{{reset:end}}}
Resets the internal state and starts processing the stack trace for a new process.
symbolizing_dart indicates whether the next stack stace is from Dart. The behavior could be
slightly different for Dart and other stack traces.
void Module (uint64_t id, std::string_view name, std::string_view build_id)
{{{module:%i:%s:%s:...}}}
Adds a module to the current process, indexed by id.
void MMap (uint64_t address, uint64_t size, uint64_t module_id, std::string_view flags, uint64_t module_offset, StringOutputFn output)
{{{mmap:%p:%x:...}}}
Associates a memory region with the module indexed by its id.
void Backtrace (uint64_t frame_id, uint64_t address, AddressType type, std::string_view message, StringOutputFn output)
{{{bt:%u:%p}}}, {{{bt:%u:%p:ra}}}, {{{bt:%u:%p:pc}}}
Represents one frame in the backtrace. We'll output the symbolized content for each frame.
void DumpFile (std::string_view type, std::string_view name)
{{{dumpfile:%s:%s}}}
Dumps the current modules and mmaps to a json file.
void ~Symbolizer ()
Defined at line 29 of file ../../tools/symbolizer/symbolizer.h
Enumerations
enum AddressType
| Name | Value |
|---|---|
| kUnknown | 0 |
| kReturnAddress | 1 |
| kProgramCounter | 2 |
Defined at line 19 of file ../../tools/symbolizer/symbolizer.h
enum ResetType
| Name | Value |
|---|---|
| kUnknown | 0 |
| kBegin | 1 |
| kEnd | 2 |
Defined at line 24 of file ../../tools/symbolizer/symbolizer.h