struct CXXRecordDecl::DefinitionData

Declaration

struct CXXRecordDecl::DefinitionData { /* full declaration omitted */ };

Declared at: clang/include/clang/AST/DeclCXX.h:286

Member Variables

public unsigned int UserDeclaredConstructor
public unsigned int UserDeclaredSpecialMembers
public unsigned int Aggregate
public unsigned int PlainOldData
public unsigned int Empty
public unsigned int Polymorphic
public unsigned int Abstract
public unsigned int IsStandardLayout
public unsigned int IsCXX11StandardLayout
public unsigned int HasBasesWithFields
public unsigned int HasBasesWithNonStaticDataMembers
public unsigned int HasPrivateFields
public unsigned int HasProtectedFields
public unsigned int HasPublicFields
public unsigned int HasMutableFields
public unsigned int HasVariantMembers
public unsigned int HasOnlyCMembers
public unsigned int HasInitMethod
public unsigned int HasInClassInitializer
public unsigned int HasUninitializedReferenceMember
public unsigned int HasUninitializedFields
public unsigned int HasInheritedConstructor
public unsigned int HasInheritedDefaultConstructor
public unsigned int HasInheritedAssignment
public unsigned int NeedOverloadResolutionForCopyConstructor
public unsigned int NeedOverloadResolutionForMoveConstructor
public unsigned int NeedOverloadResolutionForCopyAssignment
public unsigned int NeedOverloadResolutionForMoveAssignment
public unsigned int NeedOverloadResolutionForDestructor
public unsigned int DefaultedCopyConstructorIsDeleted
public unsigned int DefaultedMoveConstructorIsDeleted
public unsigned int DefaultedCopyAssignmentIsDeleted
public unsigned int DefaultedMoveAssignmentIsDeleted
public unsigned int DefaultedDestructorIsDeleted
public unsigned int HasTrivialSpecialMembers
public unsigned int HasTrivialSpecialMembersForCall
public unsigned int DeclaredNonTrivialSpecialMembers
public unsigned int DeclaredNonTrivialSpecialMembersForCall
public unsigned int HasIrrelevantDestructor
public unsigned int HasConstexprNonCopyMoveConstructor
public unsigned int HasDefaultedDefaultConstructor
public unsigned int DefaultedDefaultConstructorIsConstexpr
public unsigned int HasConstexprDefaultConstructor
public unsigned int DefaultedDestructorIsConstexpr
public unsigned int HasNonLiteralTypeFieldsOrBases
public unsigned int StructuralIfLiteral
public unsigned int UserProvidedDefaultConstructor
public unsigned int DeclaredSpecialMembers
public unsigned int ImplicitCopyConstructorCanHaveConstParamForVBase
public unsigned int ImplicitCopyConstructorCanHaveConstParamForNonVBase
public unsigned int ImplicitCopyAssignmentHasConstParam
public unsigned int HasDeclaredCopyConstructorWithConstParam
public unsigned int HasDeclaredCopyAssignmentWithConstParam
public unsigned int IsAnyDestructorNoReturn
public unsigned int IsLambda
Whether this class describes a C++ lambda.
public unsigned int IsParsingBaseSpecifiers
Whether we are currently parsing base specifiers.
public unsigned int ComputedVisibleConversions
True when visible conversion functions are already computed and are available.
public unsigned int HasODRHash
public unsigned int ODRHash = 0
A hash of parts of the class to help in ODR checking.
public unsigned int NumBases = 0
The number of base class specifiers in Bases.
public unsigned int NumVBases = 0
The number of virtual base class specifiers in VBases.
public clang::LazyCXXBaseSpecifiersPtr Bases
FIXME: This is wasted space for a union.
public clang::LazyCXXBaseSpecifiersPtr VBases
direct and indirect virtual base classes of this class.
public clang::LazyASTUnresolvedSet Conversions
Each of the entries in this overload set is a CXXConversionDecl.
public clang::LazyASTUnresolvedSet VisibleConversions
Each of the entries in this overload set is a CXXConversionDecl or a FunctionTemplateDecl.
public clang::CXXRecordDecl* Definition
The declaration which defines this record.
public clang::LazyDeclPtr FirstFriend
This is actually currently stored in reverse order.

Method Overview

Methods

DefinitionData(clang::CXXRecordDecl* D)

Declared at: clang/include/clang/AST/DeclCXX.h:342

Parameters

clang::CXXRecordDecl* D

ArrayRef<clang::CXXBaseSpecifier> bases() const

Declared at: clang/include/clang/AST/DeclCXX.h:358

clang::CXXBaseSpecifier* getBases() const

Description

Retrieve the set of direct base classes.

Declared at: clang/include/clang/AST/DeclCXX.h:345

clang::CXXBaseSpecifier* getBasesSlowCase() const

Declared at: clang/include/clang/AST/DeclCXX.h:367

clang::CXXBaseSpecifier* getVBases() const

Description

Retrieve the set of virtual base classes.

Declared at: clang/include/clang/AST/DeclCXX.h:352

clang::CXXBaseSpecifier* getVBasesSlowCase() const

Declared at: clang/include/clang/AST/DeclCXX.h:368

ArrayRef<clang::CXXBaseSpecifier> vbases() const

Declared at: clang/include/clang/AST/DeclCXX.h:362