class BuiltinType
Declaration
class BuiltinType : public Type { /* full declaration omitted */ };
Description
This class is used for builtin types like 'int'. Builtin types are always canonical and have a literal name field.
Declared at: clang/include/clang/AST/Type.h:2563
Inherits from: Type
Member Variables
Inherited from Type:
Method Overview
- private BuiltinType(clang::BuiltinType::Kind K)
- public static bool classof(const clang::Type * T)
- public clang::QualType desugar() const
- public clang::BuiltinType::Kind getKind() const
- public llvm::StringRef getName(const clang::PrintingPolicy & Policy) const
- public const char * getNameAsCString(const clang::PrintingPolicy & Policy) const
- public bool isFloatingPoint() const
- public bool isInteger() const
- public bool isNonOverloadPlaceholderType() const
- public bool isPlaceholderType() const
- public static bool isPlaceholderTypeKind(clang::BuiltinType::Kind K)
- public bool isSVEBool() const
- public bool isSignedInteger() const
- public bool isSugared() const
- public bool isUnsignedInteger() const
Inherited from Type:
- public acceptsObjCTypeParams
- protected addDependence
- public canDecayToPointerType
- public canHaveNullability
- public castAs
- public castAsArrayTypeUnsafe
- public containsErrors
- public containsUnexpandedParameterPack
- public dump
- public dump
- public getArrayElementTypeNoTypeQual
- public getAs
- public getAsAdjusted
- public getAsArrayTypeUnsafe
- public getAsCXXRecordDecl
- public getAsComplexIntegerType
- public getAsObjCInterfacePointerType
- public getAsObjCInterfaceType
- public getAsObjCQualifiedClassType
- public getAsObjCQualifiedIdType
- public getAsObjCQualifiedInterfaceType
- public getAsPlaceholderType
- public getAsRecordDecl
- public getAsStructureType
- public getAsTagDecl
- public getAsUnionType
- public getBaseElementTypeUnsafe
- public getCanonicalTypeInternal
- public getCanonicalTypeUnqualified
- public getContainedAutoType
- public getContainedDeducedType
- public getDependence
- public getLinkage
- public getLinkageAndVisibility
- public getLocallyUnqualifiedSingleStepDesugaredType
- public getNullability
- public getObjCARCImplicitLifetime
- public getObjCSubstitutions
- public getPointeeCXXRecordDecl
- public getPointeeOrArrayElementType
- public getPointeeType
- public getScalarTypeKind
- public getSveEltType
- public getTypeClass
- public getTypeClassName
- public getUnqualifiedDesugaredType
- public getVisibility
- public hasAttr
- public hasAutoForTrailingReturnType
- public hasFloatingRepresentation
- public hasIntegerRepresentation
- public hasObjCPointerRepresentation
- public hasPointerRepresentation
- public hasSignedIntegerRepresentation
- public hasSizedVLAType
- public hasUnnamedOrLocalType
- public hasUnsignedIntegerRepresentation
- public isAggregateType
- public isAlignValT
- public isAnyCharacterType
- public isAnyComplexType
- public isAnyPointerType
- public isArithmeticType
- public isArrayType
- public isAtomicType
- public isBFloat16Type
- public isBitIntType
- public isBlockCompatibleObjCPointerType
- public isBlockPointerType
- public isBooleanType
- public isBuiltinType
- public isCARCBridgableType
- public isCUDADeviceBuiltinSurfaceType
- public isCUDADeviceBuiltinTextureType
- public isCanonicalUnqualified
- public isChar16Type
- public isChar32Type
- public isChar8Type
- public isCharType
- public isClassType
- public isClkEventT
- public isComplexIntegerType
- public isComplexType
- public isCompoundType
- public isConstantArrayType
- public isConstantMatrixType
- public isConstantSizeType
- public isDecltypeType
- public isDependentAddressSpaceType
- public isDependentSizedArrayType
- public isDependentType
- public isElaboratedTypeSpecifier
- public isEnumeralType
- public isEventT
- public isExtVectorBoolType
- public isExtVectorType
- public isFixedPointOrIntegerType
- public isFixedPointType
- public isFloat128Type
- public isFloat16Type
- public isFloatingType
- public isFromAST
- public isFunctionNoProtoType
- public isFunctionPointerType
- public isFunctionProtoType
- public isFunctionReferenceType
- public isFunctionType
- public isFundamentalType
- public isHalfType
- public isIbm128Type
- public isImageType
- public isIncompleteArrayType
- public isIncompleteOrObjectType
- public isIncompleteType
- public isInstantiationDependentType
- public isIntegerType
- public isIntegralOrEnumerationType
- public isIntegralOrUnscopedEnumerationType
- public isIntegralType
- public isInterfaceType
- public isLValueReferenceType
- public isLinkageValid
- public isLiteralType
- public isMatrixType
- public isMemberDataPointerType
- public isMemberFunctionPointerType
- public isMemberPointerType
- public isNonOverloadPlaceholderType
- public isNothrowT
- public isNullPtrType
- public isOCLExtOpaqueType
- public isOCLIntelSubgroupAVCType
- public isObjCARCBridgableType
- public isObjCARCImplicitlyUnretainedType
- public isObjCBoxableRecordType
- public isObjCBuiltinType
- public isObjCClassOrClassKindOfType
- public isObjCClassType
- public isObjCIdOrObjectKindOfType
- public isObjCIdType
- public isObjCIndependentClassType
- public isObjCIndirectLifetimeType
- public isObjCInertUnsafeUnretainedType
- public isObjCLifetimeType
- public isObjCNSObjectType
- public isObjCObjectOrInterfaceType
- public isObjCObjectPointerType
- public isObjCObjectType
- public isObjCQualifiedClassType
- public isObjCQualifiedIdType
- public isObjCQualifiedInterfaceType
- public isObjCRetainableType
- public isObjCSelType
- public isObjectPointerType
- public isObjectType
- public isOpenCLSpecificType
- public isOverloadableType
- public isPipeType
- public isPlaceholderType
- public isPointerType
- public isPromotableIntegerType
- public isQueueT
- public isRValueReferenceType
- public isRealFloatingType
- public isRealType
- public isRecordType
- public isReferenceType
- public isReserveIDT
- public isSamplerT
- public isSaturatedFixedPointType
- public isScalarType
- public isScopedEnumeralType
- public isSignedFixedPointType
- public isSignedIntegerOrEnumerationType
- public isSignedIntegerType
- public isSizelessBuiltinType
- public isSizelessType
- public isSpecificBuiltinType
- public isSpecificPlaceholderType
- public isSpecifierType
- public isStandardLayoutType
- public isStdByteType
- public isStructuralType
- public isStructureOrClassType
- public isStructureType
- public isTemplateTypeParmType
- public isTypedefNameType
- public isUndeducedAutoType
- public isUndeducedType
- public isUnionType
- public isUnsaturatedFixedPointType
- public isUnscopedEnumerationType
- public isUnsignedFixedPointType
- public isUnsignedIntegerOrEnumerationType
- public isUnsignedIntegerType
- public isVLSTBuiltinType
- public isVariableArrayType
- public isVariablyModifiedType
- public isVectorType
- public isVisibilityExplicit
- public isVoidPointerType
- public isVoidType
- public isWideCharType
- protected setDependence
- protected this_
Inherited from ExtQualsTypeCommonBase:
Methods
¶BuiltinType(clang::BuiltinType::Kind K)
BuiltinType(clang::BuiltinType::Kind K)
Declared at: clang/include/clang/AST/Type.h:2590
Parameters
- clang::BuiltinType::Kind K
¶static bool classof(const clang::Type* T)
static bool classof(const clang::Type* T)
Declared at: clang/include/clang/AST/Type.h:2654
Parameters
- const clang::Type* T
¶clang::QualType desugar() const
clang::QualType desugar() const
Declared at: clang/include/clang/AST/Type.h:2609
¶clang::BuiltinType::Kind getKind() const
clang::BuiltinType::Kind getKind() const
Declared at: clang/include/clang/AST/Type.h:2598
¶llvm::StringRef getName(
const clang::PrintingPolicy& Policy) const
llvm::StringRef getName(
const clang::PrintingPolicy& Policy) const
Declared at: clang/include/clang/AST/Type.h:2599
Parameters
- const clang::PrintingPolicy& Policy
¶const char* getNameAsCString(
const clang::PrintingPolicy& Policy) const
const char* getNameAsCString(
const clang::PrintingPolicy& Policy) const
Declared at: clang/include/clang/AST/Type.h:2601
Parameters
- const clang::PrintingPolicy& Policy
¶bool isFloatingPoint() const
bool isFloatingPoint() const
Declared at: clang/include/clang/AST/Type.h:2623
¶bool isInteger() const
bool isInteger() const
Declared at: clang/include/clang/AST/Type.h:2611
¶bool isNonOverloadPlaceholderType() const
bool isNonOverloadPlaceholderType() const
Description
Determines whether this type is a placeholder type other than Overload. Most placeholder types require only syntactic information about their context in order to be resolved (e.g. whether it is a call expression), which means they can (and should) be resolved in an earlier "phase" of analysis. Overload expressions sometimes pick up further information from their context, like whether the context expects a specific function-pointer type, and so frequently need special treatment.
Declared at: clang/include/clang/AST/Type.h:2650
¶bool isPlaceholderType() const
bool isPlaceholderType() const
Description
Determines whether this type is a placeholder type, i.e. a type which cannot appear in arbitrary positions in a fully-formed expression.
Declared at: clang/include/clang/AST/Type.h:2637
¶static bool isPlaceholderTypeKind(
clang::BuiltinType::Kind K)
static bool isPlaceholderTypeKind(
clang::BuiltinType::Kind K)
Description
Determines whether the given kind corresponds to a placeholder type.
Declared at: clang/include/clang/AST/Type.h:2630
Parameters
- clang::BuiltinType::Kind K
¶bool isSVEBool() const
bool isSVEBool() const
Declared at: clang/include/clang/AST/Type.h:2627
¶bool isSignedInteger() const
bool isSignedInteger() const
Declared at: clang/include/clang/AST/Type.h:2615
¶bool isSugared() const
bool isSugared() const
Declared at: clang/include/clang/AST/Type.h:2608
¶bool isUnsignedInteger() const
bool isUnsignedInteger() const
Declared at: clang/include/clang/AST/Type.h:2619