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
- public DefinitionData(clang::CXXRecordDecl * D)
- public ArrayRef<clang::CXXBaseSpecifier> bases() const
- public clang::CXXBaseSpecifier * getBases() const
- private clang::CXXBaseSpecifier * getBasesSlowCase() const
- public clang::CXXBaseSpecifier * getVBases() const
- private clang::CXXBaseSpecifier * getVBasesSlowCase() const
- public ArrayRef<clang::CXXBaseSpecifier> vbases() const
Methods
¶DefinitionData(clang::CXXRecordDecl* D)
DefinitionData(clang::CXXRecordDecl* D)
Declared at: clang/include/clang/AST/DeclCXX.h:342
Parameters
¶ArrayRef<clang::CXXBaseSpecifier> bases() const
ArrayRef<clang::CXXBaseSpecifier> bases() const
Declared at: clang/include/clang/AST/DeclCXX.h:358
¶clang::CXXBaseSpecifier* getBases() const
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
clang::CXXBaseSpecifier* getBasesSlowCase() const
Declared at: clang/include/clang/AST/DeclCXX.h:367
¶clang::CXXBaseSpecifier* getVBases() const
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
clang::CXXBaseSpecifier* getVBasesSlowCase() const
Declared at: clang/include/clang/AST/DeclCXX.h:368
¶ArrayRef<clang::CXXBaseSpecifier> vbases() const
ArrayRef<clang::CXXBaseSpecifier> vbases() const
Declared at: clang/include/clang/AST/DeclCXX.h:362