class VTableLayout
Declaration
class VTableLayout { /* full declaration omitted */ };
Declared at: clang/include/clang/AST/VTableBuilder.h:233
Member Variables
- private OwningArrayRef<size_t> VTableIndices
- private OwningArrayRef<clang::VTableComponent> VTableComponents
- private OwningArrayRef<clang::VTableLayout::VTableThunkTy> VTableThunks
- Contains thunks needed by vtables, sorted by indices.
- private clang::VTableLayout::AddressPointsMapTy AddressPoints
- Address points for all vtables.
- private clang::VTableLayout::AddressPointsIndexMapTy AddressPointIndices
- Address points for all vtable indices.
Method Overview
- public VTableLayout(ArrayRef<size_t> VTableIndices, ArrayRef<clang::VTableComponent> VTableComponents, ArrayRef<clang::VTableLayout::VTableThunkTy> VTableThunks, const clang::VTableLayout::AddressPointsMapTy & AddressPoints)
- public clang::VTableLayout::AddressPointLocation getAddressPoint(clang::BaseSubobject Base) const
- public const clang::VTableLayout::AddressPointsIndexMapTy & getAddressPointIndices() const
- public const clang::VTableLayout::AddressPointsMapTy & getAddressPoints() const
- public size_t getNumVTables() const
- public size_t getVTableOffset(size_t i) const
- public size_t getVTableSize(size_t i) const
- public ArrayRef<clang::VTableComponent> vtable_components() const
- public ArrayRef<clang::VTableLayout::VTableThunkTy> vtable_thunks() const
- public ~VTableLayout()
Methods
¶VTableLayout(
ArrayRef<size_t> VTableIndices,
ArrayRef<clang::VTableComponent>
VTableComponents,
ArrayRef<clang::VTableLayout::VTableThunkTy>
VTableThunks,
const clang::VTableLayout::AddressPointsMapTy&
AddressPoints)
VTableLayout(
ArrayRef<size_t> VTableIndices,
ArrayRef<clang::VTableComponent>
VTableComponents,
ArrayRef<clang::VTableLayout::VTableThunkTy>
VTableThunks,
const clang::VTableLayout::AddressPointsMapTy&
AddressPoints)
Declared at: clang/include/clang/AST/VTableBuilder.h:266
Parameters
- ArrayRef<size_t> VTableIndices
- ArrayRef<clang::VTableComponent> VTableComponents
- ArrayRef<clang::VTableLayout::VTableThunkTy> VTableThunks
- const clang::VTableLayout::AddressPointsMapTy& AddressPoints
¶clang::VTableLayout::AddressPointLocation
getAddressPoint(clang::BaseSubobject Base) const
clang::VTableLayout::AddressPointLocation
getAddressPoint(clang::BaseSubobject Base) const
Declared at: clang/include/clang/AST/VTableBuilder.h:280
Parameters
- clang::BaseSubobject Base
¶const clang::VTableLayout::
AddressPointsIndexMapTy&
getAddressPointIndices() const
const clang::VTableLayout::
AddressPointsIndexMapTy&
getAddressPointIndices() const
Declared at: clang/include/clang/AST/VTableBuilder.h:289
¶const clang::VTableLayout::AddressPointsMapTy&
getAddressPoints() const
const clang::VTableLayout::AddressPointsMapTy&
getAddressPoints() const
Declared at: clang/include/clang/AST/VTableBuilder.h:285
¶size_t getNumVTables() const
size_t getNumVTables() const
Declared at: clang/include/clang/AST/VTableBuilder.h:293
¶size_t getVTableOffset(size_t i) const
size_t getVTableOffset(size_t i) const
Declared at: clang/include/clang/AST/VTableBuilder.h:299
Parameters
- size_t i
¶size_t getVTableSize(size_t i) const
size_t getVTableSize(size_t i) const
Declared at: clang/include/clang/AST/VTableBuilder.h:307
Parameters
- size_t i
¶ArrayRef<clang::VTableComponent>
vtable_components() const
ArrayRef<clang::VTableComponent>
vtable_components() const
Declared at: clang/include/clang/AST/VTableBuilder.h:272
¶ArrayRef<clang::VTableLayout::VTableThunkTy>
vtable_thunks() const
ArrayRef<clang::VTableLayout::VTableThunkTy>
vtable_thunks() const
Declared at: clang/include/clang/AST/VTableBuilder.h:276
¶~VTableLayout()
~VTableLayout()
Declared at: clang/include/clang/AST/VTableBuilder.h:270