clang API Documentation
#include <Type.h>
Public Types | |
enum | Kind |
Public Member Functions | |
BuiltinType (Kind K) | |
Kind | getKind () const |
StringRef | getName (const PrintingPolicy &Policy) const |
const char * | getNameAsCString (const PrintingPolicy &Policy) const |
bool | isSugared () const |
QualType | desugar () const |
bool | isInteger () const |
bool | isSignedInteger () const |
bool | isUnsignedInteger () const |
bool | isFloatingPoint () const |
bool | isPlaceholderType () const |
bool | isNonOverloadPlaceholderType () const |
Static Public Member Functions | |
static bool | isPlaceholderTypeKind (Kind K) |
Determines whether the given kind corresponds to a placeholder type. | |
static bool | classof (const Type *T) |
BuiltinType - This class is used for builtin types like 'int'. Builtin types are always canonical and have a literal name field.
clang::BuiltinType::BuiltinType | ( | Kind | K | ) | [inline] |
static bool clang::BuiltinType::classof | ( | const Type * | T | ) | [inline, static] |
Definition at line 1909 of file Type.h.
References clang::Type::getTypeClass().
QualType clang::BuiltinType::desugar | ( | ) | const [inline] |
Kind clang::BuiltinType::getKind | ( | ) | const [inline] |
Definition at line 1856 of file Type.h.
Referenced by appendBuiltinType(), clang::Sema::CheckPlaceholderExpr(), clang::Sema::DefaultArgumentPromotion(), EncodeBitField(), clang::analyze_printf::PrintfSpecifier::fixType(), clang::analyze_scanf::ScanfSpecifier::fixType(), clang::ASTContext::getCorrespondingUnsignedType(), getFloatingRank(), clang::ASTContext::getFloatTypeSemantics(), getName(), clang::NSAPI::getNSNumberFactoryMethodKind(), clang::BuiltinTypeLoc::getWrittenTypeSpec(), clang::Type::isAnyCharacterType(), clang::Sema::IsIntegralPromotion(), isPermittedNeonBaseType(), isPlaceholderToRemoveAsArg(), mangleAArch64VectorBase(), ObjCEncodingForEnumType(), clang::serialization::TypeIdxFromBuiltin(), TypeInfoIsInStandardLibrary(), and clang::ASTNodeImporter::VisitBuiltinType().
StringRef BuiltinType::getName | ( | const PrintingPolicy & | Policy | ) | const |
Definition at line 1508 of file Type.cpp.
References clang::PrintingPolicy::Bool, getKind(), clang::PrintingPolicy::Half, and clang::PrintingPolicy::MSWChar.
const char* clang::BuiltinType::getNameAsCString | ( | const PrintingPolicy & | Policy | ) | const [inline] |
bool clang::BuiltinType::isFloatingPoint | ( | ) | const [inline] |
bool clang::BuiltinType::isInteger | ( | ) | const [inline] |
Definition at line 1868 of file Type.h.
References getKind().
Referenced by clang::ento::ExprEngine::getInitialState().
bool clang::BuiltinType::isNonOverloadPlaceholderType | ( | ) | const [inline] |
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.
Reimplemented from clang::Type.
Definition at line 1905 of file Type.h.
References getKind().
bool clang::BuiltinType::isPlaceholderType | ( | ) | const [inline] |
Determines whether this type is a placeholder type, i.e. a type which cannot appear in arbitrary positions in a fully-formed expression.
Reimplemented from clang::Type.
Definition at line 1892 of file Type.h.
References getKind().
static bool clang::BuiltinType::isPlaceholderTypeKind | ( | Kind | K | ) | [inline, static] |
Determines whether the given kind corresponds to a placeholder type.
Definition at line 1885 of file Type.h.
Referenced by clang::Expr::hasPlaceholderType(), and clang::Type::isSpecificPlaceholderType().
bool clang::BuiltinType::isSignedInteger | ( | ) | const [inline] |
bool clang::BuiltinType::isSugared | ( | ) | const [inline] |
bool clang::BuiltinType::isUnsignedInteger | ( | ) | const [inline] |