clang 22.0.0git
clang::VTableContextBase Class Referenceabstract

#include "clang/AST/VTableBuilder.h"

Inheritance diagram for clang::VTableContextBase:
[legend]

Public Types

typedef SmallVector< ThunkInfo, 1 > ThunkInfoVectorTy

Public Member Functions

bool isMicrosoft () const
virtual ~VTableContextBase ()
virtual const ThunkInfoVectorTygetThunkInfo (GlobalDecl GD)

Static Public Member Functions

static bool hasVtableSlot (const CXXMethodDecl *MD)
 Determine whether this function should be assigned a vtable slot.

Public Attributes

bool IsMicrosoftABI

Protected Types

typedef llvm::DenseMap< const CXXMethodDecl *, ThunkInfoVectorTyThunksMapTy

Protected Member Functions

virtual void computeVTableRelatedInformation (const CXXRecordDecl *RD)=0
 Compute and store all vtable related information (vtable layout, vbase offset offsets, thunks etc) for the given record decl.
 VTableContextBase (bool MS)

Protected Attributes

ThunksMapTy Thunks
 Contains all thunks that a given method decl will need.

Detailed Description

Definition at line 321 of file VTableBuilder.h.

Member Typedef Documentation

◆ ThunkInfoVectorTy

◆ ThunksMapTy

typedef llvm::DenseMap<const CXXMethodDecl *, ThunkInfoVectorTy> clang::VTableContextBase::ThunksMapTy
protected

Definition at line 330 of file VTableBuilder.h.

Constructor & Destructor Documentation

◆ ~VTableContextBase()

virtual clang::VTableContextBase::~VTableContextBase ( )
inlinevirtual

Definition at line 327 of file VTableBuilder.h.

◆ VTableContextBase()

Member Function Documentation

◆ computeVTableRelatedInformation()

virtual void clang::VTableContextBase::computeVTableRelatedInformation ( const CXXRecordDecl * RD)
protectedpure virtual

Compute and store all vtable related information (vtable layout, vbase offset offsets, thunks etc) for the given record decl.

Referenced by getThunkInfo().

◆ getThunkInfo()

◆ hasVtableSlot()

bool VTableContextBase::hasVtableSlot ( const CXXMethodDecl * MD)
static

Determine whether this function should be assigned a vtable slot.

Definition at line 2332 of file VTableBuilder.cpp.

References clang::FunctionDecl::isImmediateFunction(), and clang::CXXMethodDecl::isVirtual().

Referenced by clang::MicrosoftVTableContext::getMethodVFTableLocation(), GroupNewVirtualOverloads(), and selectBestPath().

◆ isMicrosoft()

bool clang::VTableContextBase::isMicrosoft ( ) const
inline

Member Data Documentation

◆ IsMicrosoftABI

bool clang::VTableContextBase::IsMicrosoftABI

Definition at line 357 of file VTableBuilder.h.

Referenced by isMicrosoft(), and VTableContextBase().

◆ Thunks

ThunksMapTy clang::VTableContextBase::Thunks
protected

Contains all thunks that a given method decl will need.

Definition at line 333 of file VTableBuilder.h.

Referenced by getThunkInfo().


The documentation for this class was generated from the following files: