void ASTExporter::VisitBuiltinType()

in facebook-clang-plugins/libtooling/ASTExporter.h [5086:5117]


void ASTExporter<ATDWriter>::VisitBuiltinType(const BuiltinType *T) {
  VisitType(T);
  std::string type_name;
  switch (T->getKind()) {
#define BUILTIN_TYPE(TYPE, ID) \
  case BuiltinType::TYPE: {    \
    type_name = #TYPE;         \
    break;                     \
  }
#include <clang/AST/BuiltinTypes.def>
#define SVE_PREDICATE_TYPE(Name, MangeldName, Id, SingletonId, NumEls) \
  case BuiltinType::Id: {                                 \
    type_name = #Id;                                      \
    break;                                                \
  }
#define SVE_VECTOR_TYPE(                                                      \
    Name, MangledName, Id, SingletonId, NumEls, ElBits, IsSigned, IsFP, IsBF) \
  case BuiltinType::Id: {                                                      \
    type_name = #Id;                                                           \
    break;                                                                     \
  }
#include <clang/Basic/AArch64SVEACLETypes.def>
#define IMAGE_TYPE(ImgType, ID, SingletonId, Access, Suffix) \
  case BuiltinType::ID:
#include <clang/Basic/OpenCLImageTypes.def>
#define EXT_OPAQUE_TYPE(Name, Id, Ext) case BuiltinType::Id:
#include <clang/Basic/OpenCLExtensionTypes.def>
    llvm_unreachable("OCL builtin types are unsupported");
    break;
  }
  OF.emitSimpleVariant(type_name);
}