struct VirtualBaseTestSetup
Defined at line 35 of file ../../src/developer/debug/zxdb/expr/virtual_base_test_setup.h
Sets up the required information for a test involving a base class with a virtual function and
a class derived from it. The necessary symbols for the vtables all need to be set properly.
It is designed to work with a module loaded at the address provided by ProcessSymbolsTestSetup.
Example:
VirtualBaseTestSetup setup(...);
ExprValue ptr(setup::kBaseAddress, setup.base_class_ptr);
This will be a pointer to the Base class that is actually implemented by the Derived class.
Public Members
RefPtr vtbl_entry_type
RefPtr vtbl_ptr_type
RefPtr vtbl_ptr_type_ptr
RefPtr base_class
unique_ptr base_class_indexed
RefPtr base_class_ptr
RefPtr base_class_ref
RefPtr derived_class
unique_ptr derived_class_indexed
RefPtr base_vtable
RefPtr derived_vtable
vector derived_data
static const uint32_t kBaseOffset
static const TargetPointer kVtableRelativeAddress
static const TargetPointer kVtableAbsoluteAddress
static const TargetPointer kDerivedAddress
static const TargetPointer kBaseAddress
static const char * kBaseIName
static const uint32_t kBaseI
static const char * kDerivedIName
static const uint32_t kDerivedI
Public Methods
void VirtualBaseTestSetup (MockSymbolDataProvider * data_provider, MockModuleSymbols * mock_module_symbols)
Defined at line 30 of file ../../src/developer/debug/zxdb/expr/virtual_base_test_setup.cc