#include "clang/Driver/Types.h"
#include "clang/Driver/Driver.h"
#include "clang/Driver/DriverDiagnostic.h"
#include "clang/Driver/Options.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/Option/Arg.h"
#include <cassert>
#include <cstring>
usingnamespaceclang::driver;
usingnamespaceclang::driver::types;
struct TypeInfo { … };
static constexpr TypeInfo TypeInfos[] = …;
static const unsigned numTypes = …;
static const TypeInfo &getInfo(unsigned id) { … }
const char *types::getTypeName(ID Id) { … }
types::ID types::getPreprocessedType(ID Id) { … }
static bool isPreprocessedModuleType(ID Id) { … }
static bool isPreprocessedHeaderUnitType(ID Id) { … }
types::ID types::getPrecompiledType(ID Id) { … }
const char *types::getTypeTempSuffix(ID Id, bool CLStyle) { … }
bool types::onlyPrecompileType(ID Id) { … }
bool types::canTypeBeUserSpecified(ID Id) { … }
bool types::appendSuffixForType(ID Id) { … }
bool types::canLipoType(ID Id) { … }
bool types::isAcceptedByClang(ID Id) { … }
bool types::isAcceptedByFlang(ID Id) { … }
bool types::isDerivedFromC(ID Id) { … }
bool types::isObjC(ID Id) { … }
bool types::isOpenCL(ID Id) { … }
bool types::isCXX(ID Id) { … }
bool types::isLLVMIR(ID Id) { … }
bool types::isCuda(ID Id) { … }
bool types::isHIP(ID Id) { … }
bool types::isHLSL(ID Id) { … }
bool types::isSrcFile(ID Id) { … }
types::ID types::lookupTypeForExtension(llvm::StringRef Ext) { … }
types::ID types::lookupTypeForTypeSpecifier(const char *Name) { … }
llvm::SmallVector<phases::ID, phases::MaxNumberOfPhases>
types::getCompilationPhases(ID Id, phases::ID LastPhase) { … }
llvm::SmallVector<phases::ID, phases::MaxNumberOfPhases>
types::getCompilationPhases(const clang::driver::Driver &Driver,
llvm::opt::DerivedArgList &DAL, ID Id) { … }
ID types::lookupCXXTypeForCType(ID Id) { … }
ID types::lookupHeaderTypeForSourceType(ID Id) { … }