clang API Documentation
#include <VTableBuilder.h>
Classes | |
struct | MethodVFTableLocation |
Public Member Functions | |
MicrosoftVTableContext (ASTContext &Context) | |
~MicrosoftVTableContext () | |
const VPtrInfoVector & | getVFPtrOffsets (const CXXRecordDecl *RD) |
const VTableLayout & | getVFTableLayout (const CXXRecordDecl *RD, CharUnits VFPtrOffset) |
const MethodVFTableLocation & | getMethodVFTableLocation (GlobalDecl GD) |
const ThunkInfoVectorTy * | getThunkInfo (GlobalDecl GD) override |
unsigned | getVBTableIndex (const CXXRecordDecl *Derived, const CXXRecordDecl *VBase) |
Returns the index of VBase in the vbtable of Derived. VBase must be a morally virtual base of Derived. The vbtable is an array of i32 offsets. The first entry is a self entry, and the rest are offsets from the vbptr to virtual bases. | |
const VPtrInfoVector & | enumerateVBTables (const CXXRecordDecl *RD) |
Static Public Member Functions | |
static bool | classof (const VTableContextBase *VT) |
Definition at line 443 of file VTableBuilder.h.
clang::MicrosoftVTableContext::MicrosoftVTableContext | ( | ASTContext & | Context | ) | [inline] |
Definition at line 511 of file VTableBuilder.h.
Definition at line 3429 of file VTableBuilder.cpp.
static bool clang::MicrosoftVTableContext::classof | ( | const VTableContextBase * | VT | ) | [inline, static] |
Definition at line 540 of file VTableBuilder.h.
References clang::VTableContextBase::isMicrosoft().
const VPtrInfoVector & MicrosoftVTableContext::enumerateVBTables | ( | const CXXRecordDecl * | RD | ) |
Definition at line 3642 of file VTableBuilder.cpp.
References clang::VirtualBaseInfo::VBPtrPaths.
const MicrosoftVTableContext::MethodVFTableLocation & MicrosoftVTableContext::getMethodVFTableLocation | ( | GlobalDecl | GD | ) |
Definition at line 3665 of file VTableBuilder.cpp.
References clang::Dtor_Deleting, clang::GlobalDecl::getDecl(), and clang::GlobalDecl::getDtorType().
const ThunkInfoVectorTy* clang::MicrosoftVTableContext::getThunkInfo | ( | GlobalDecl | GD | ) | [inline, override, virtual] |
Reimplemented from clang::VTableContextBase.
Definition at line 523 of file VTableBuilder.h.
References clang::Dtor_Complete, clang::GlobalDecl::getDecl(), and clang::GlobalDecl::getDtorType().
unsigned MicrosoftVTableContext::getVBTableIndex | ( | const CXXRecordDecl * | Derived, |
const CXXRecordDecl * | VBase | ||
) |
Returns the index of VBase in the vbtable of Derived. VBase must be a morally virtual base of Derived. The vbtable is an array of i32 offsets. The first entry is a self entry, and the rest are offsets from the vbptr to virtual bases.
Definition at line 3634 of file VTableBuilder.cpp.
References clang::VirtualBaseInfo::VBTableIndices.
const VPtrInfoVector & MicrosoftVTableContext::getVFPtrOffsets | ( | const CXXRecordDecl * | RD | ) |
Definition at line 3647 of file VTableBuilder.cpp.
const VTableLayout & MicrosoftVTableContext::getVFTableLayout | ( | const CXXRecordDecl * | RD, |
CharUnits | VFPtrOffset | ||
) |
Definition at line 3655 of file VTableBuilder.cpp.
References clang::ast_matchers::id().