class UnitSymbolFactory
Defined at line 25 of file ../../src/developer/debug/zxdb/symbols/unit_symbol_factory.h
A factory for creating symbol objects because on unit-relative offsets. Some DWARF constructs
refer to DIE entries via unit-relative offsets. Code needing this capability can be passed this
object.
This object is extremely simple and just encodes a Symbolfactory + unit_offset. It can be used
for mock symbols in tests by using a MockSymbolFactory and arranging for mock symbols to be
generated at the "unit_loc + offset" locations. The unit offset is never actually dereferenced so
a DWARF unit does not need to actually be present at the unit_loc for testing.
Copying and passing-by-value is OK.
Public Methods
void UnitSymbolFactory ()
A default-constructred UnitSymbolFactory returns empty LazySymbols.
Defined at line 28 of file ../../src/developer/debug/zxdb/symbols/unit_symbol_factory.h
void UnitSymbolFactory (fxl::RefPtr<const SymbolFactory> factory, uint64_t unit_loc)
Defined at line 30 of file ../../src/developer/debug/zxdb/symbols/unit_symbol_factory.h
void UnitSymbolFactory (const Symbol * symbol)
Constructs a UnitSymbolFactory for the unit containing the given Symbol. On failure this
generates a symbol factory that returns empty LazySymbols.
Defined at line 35 of file ../../src/developer/debug/zxdb/symbols/unit_symbol_factory.h
LazySymbol MakeLazyUnitRelative (uint64_t offset_from_unit)
Constructs a lazy symbol given a unit-relative DIE offset.
We could also add an "Uncached" variant in the future if needed.
Defined at line 51 of file ../../src/developer/debug/zxdb/symbols/unit_symbol_factory.h