26#include "clang/Basic/Traits.inc"
29 assert(T <= TT_Last &&
"invalid enum value!");
30 return TypeTraitNames[T];
34 assert(T <= ATT_Last &&
"invalid enum value!");
35 return ArrayTypeTraitNames[T];
39 assert(T <= UETT_Last &&
"invalid enum value!");
40 return UnaryExprOrTypeTraitNames[T];
44 assert(T <= TT_Last &&
"invalid enum value!");
45 if (T == BTT_IsDeducible) {
51 assert(std::strlen(TypeTraitSpellings[T]) == 0);
52 return "__is_deducible";
54 return TypeTraitSpellings[T];
58 assert(T <= ATT_Last &&
"invalid enum value!");
59 return ArrayTypeTraitSpellings[T];
63 assert(T <= UETT_Last &&
"invalid enum value!");
64 return UnaryExprOrTypeTraitSpellings[T];
68 assert(T <= TT_Last &&
"invalid enum value!");
69 return TypeTraitArities[T];
Defines enumerations for the type traits support.
The JSON file list parser is used to communicate input to InstallAPI.
unsigned getTypeTraitArity(TypeTrait T) LLVM_READONLY
Return the arity of the type trait T.
const char * getTraitName(ExpressionTrait T) LLVM_READONLY
Return the internal name of type trait T. Never null.
const char * getTraitSpelling(ExpressionTrait T) LLVM_READONLY
Return the spelling of the type trait TT. Never null.