clang  6.0.0svn
Public Member Functions | List of all members
clang::CXXABI Class Referenceabstract

Implements C++ ABI-specific semantic analysis functions. More...

#include "/opt/doxygen-docs/src/llvm/tools/clang/lib/AST/CXXABI.h"

Public Member Functions

virtual ~CXXABI ()
 
virtual std::pair< uint64_t, unsigned > getMemberPointerWidthAndAlign (const MemberPointerType *MPT) const =0
 Returns the width and alignment of a member pointer in bits. More...
 
virtual CallingConv getDefaultMethodCallConv (bool isVariadic) const =0
 Returns the default calling convention for C++ methods. More...
 
virtual bool isNearlyEmpty (const CXXRecordDecl *RD) const =0
 Returns whether the given class is nearly empty, with just virtual pointers and no data except possibly virtual bases. More...
 
virtual std::unique_ptr< MangleNumberingContextcreateMangleNumberingContext () const =0
 Returns a new mangling number context for this C++ ABI. More...
 
virtual void addCopyConstructorForExceptionObject (CXXRecordDecl *, CXXConstructorDecl *)=0
 Adds a mapping from class to copy constructor for this C++ ABI. More...
 
virtual const CXXConstructorDeclgetCopyConstructorForExceptionObject (CXXRecordDecl *)=0
 Retrieves the mapping from class to copy constructor for this C++ ABI. More...
 
virtual void addTypedefNameForUnnamedTagDecl (TagDecl *TD, TypedefNameDecl *DD)=0
 
virtual TypedefNameDeclgetTypedefNameForUnnamedTagDecl (const TagDecl *TD)=0
 
virtual void addDeclaratorForUnnamedTagDecl (TagDecl *TD, DeclaratorDecl *DD)=0
 
virtual DeclaratorDeclgetDeclaratorForUnnamedTagDecl (const TagDecl *TD)=0
 

Detailed Description

Implements C++ ABI-specific semantic analysis functions.

Definition at line 30 of file CXXABI.h.

Constructor & Destructor Documentation

◆ ~CXXABI()

CXXABI::~CXXABI ( )
virtual

Definition at line 9320 of file ASTContext.cpp.

Member Function Documentation

◆ addCopyConstructorForExceptionObject()

virtual void clang::CXXABI::addCopyConstructorForExceptionObject ( CXXRecordDecl ,
CXXConstructorDecl  
)
pure virtual

Adds a mapping from class to copy constructor for this C++ ABI.

◆ addDeclaratorForUnnamedTagDecl()

virtual void clang::CXXABI::addDeclaratorForUnnamedTagDecl ( TagDecl TD,
DeclaratorDecl DD 
)
pure virtual

◆ addTypedefNameForUnnamedTagDecl()

virtual void clang::CXXABI::addTypedefNameForUnnamedTagDecl ( TagDecl TD,
TypedefNameDecl DD 
)
pure virtual

◆ createMangleNumberingContext()

virtual std::unique_ptr<MangleNumberingContext> clang::CXXABI::createMangleNumberingContext ( ) const
pure virtual

Returns a new mangling number context for this C++ ABI.

◆ getCopyConstructorForExceptionObject()

virtual const CXXConstructorDecl* clang::CXXABI::getCopyConstructorForExceptionObject ( CXXRecordDecl )
pure virtual

Retrieves the mapping from class to copy constructor for this C++ ABI.

◆ getDeclaratorForUnnamedTagDecl()

virtual DeclaratorDecl* clang::CXXABI::getDeclaratorForUnnamedTagDecl ( const TagDecl TD)
pure virtual

◆ getDefaultMethodCallConv()

virtual CallingConv clang::CXXABI::getDefaultMethodCallConv ( bool  isVariadic) const
pure virtual

Returns the default calling convention for C++ methods.

◆ getMemberPointerWidthAndAlign()

virtual std::pair<uint64_t, unsigned> clang::CXXABI::getMemberPointerWidthAndAlign ( const MemberPointerType MPT) const
pure virtual

Returns the width and alignment of a member pointer in bits.

◆ getTypedefNameForUnnamedTagDecl()

virtual TypedefNameDecl* clang::CXXABI::getTypedefNameForUnnamedTagDecl ( const TagDecl TD)
pure virtual

◆ isNearlyEmpty()

virtual bool clang::CXXABI::isNearlyEmpty ( const CXXRecordDecl RD) const
pure virtual

Returns whether the given class is nearly empty, with just virtual pointers and no data except possibly virtual bases.


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