clang API Documentation
#include "clang/Frontend/FrontendActions.h"
#include "clang/AST/ASTConsumer.h"
#include "clang/Basic/FileManager.h"
#include "clang/Frontend/ASTConsumers.h"
#include "clang/Frontend/ASTUnit.h"
#include "clang/Frontend/CompilerInstance.h"
#include "clang/Frontend/FrontendDiagnostic.h"
#include "clang/Frontend/Utils.h"
#include "clang/Lex/HeaderSearch.h"
#include "clang/Lex/Pragma.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Parse/Parser.h"
#include "clang/Serialization/ASTReader.h"
#include "clang/Serialization/ASTWriter.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/raw_ostream.h"
#include <memory>
#include <system_error>
#include "clang/Basic/LangOptions.def"
#include "clang/Basic/DiagnosticOptions.def"
Go to the source code of this file.
Defines | |
#define | DUMP_BOOLEAN(Value, Text) Out.indent(4) << Text << ": " << (Value? "Yes" : "No") << "\n" |
#define | LANGOPT(Name, Bits, Default, Description) DUMP_BOOLEAN(LangOpts.Name, Description); |
#define | ENUM_LANGOPT(Name, Type, Bits, Default, Description) |
#define | VALUE_LANGOPT(Name, Bits, Default, Description) Out.indent(4) << Description << ": " << LangOpts.Name << "\n"; |
#define | BENIGN_LANGOPT(Name, Bits, Default, Description) |
#define | BENIGN_ENUM_LANGOPT(Name, Type, Bits, Default, Description) |
#define | DIAGOPT(Name, Bits, Default) DUMP_BOOLEAN(DiagOpts->Name, #Name); |
#define | ENUM_DIAGOPT(Name, Type, Bits, Default) Out.indent(4) << #Name << ": " << DiagOpts->get##Name() << "\n"; |
#define | VALUE_DIAGOPT(Name, Bits, Default) Out.indent(4) << #Name << ": " << DiagOpts->Name << "\n"; |
Functions | |
static SmallVectorImpl< char > & | operator+= (SmallVectorImpl< char > &Includes, StringRef RHS) |
static std::error_code | addHeaderInclude (StringRef HeaderName, SmallVectorImpl< char > &Includes, const LangOptions &LangOpts, bool IsExternC) |
static std::error_code | addHeaderInclude (const FileEntry *Header, SmallVectorImpl< char > &Includes, const LangOptions &LangOpts, bool IsExternC) |
static std::error_code | collectModuleHeaderIncludes (const LangOptions &LangOpts, FileManager &FileMgr, ModuleMap &ModMap, clang::Module *Module, SmallVectorImpl< char > &Includes) |
Collect the set of header includes needed to construct the given module and update the TopHeaders file set of the module. |
#define BENIGN_ENUM_LANGOPT | ( | Name, | |
Type, | |||
Bits, | |||
Default, | |||
Description | |||
) |
#define BENIGN_LANGOPT | ( | Name, | |
Bits, | |||
Default, | |||
Description | |||
) |
#define DIAGOPT | ( | Name, | |
Bits, | |||
Default | |||
) | DUMP_BOOLEAN(DiagOpts->Name, #Name); |
#define DUMP_BOOLEAN | ( | Value, | |
Text | |||
) | Out.indent(4) << Text << ": " << (Value? "Yes" : "No") << "\n" |
Definition at line 415 of file Frontend/FrontendActions.cpp.
#define ENUM_DIAGOPT | ( | Name, | |
Type, | |||
Bits, | |||
Default | |||
) | Out.indent(4) << #Name << ": " << DiagOpts->get##Name() << "\n"; |
#define ENUM_LANGOPT | ( | Name, | |
Type, | |||
Bits, | |||
Default, | |||
Description | |||
) |
Out.indent(4) << Description << ": " \ << static_cast<unsigned>(LangOpts.get##Name()) << "\n";
#define LANGOPT | ( | Name, | |
Bits, | |||
Default, | |||
Description | |||
) | DUMP_BOOLEAN(LangOpts.Name, Description); |
#define VALUE_DIAGOPT | ( | Name, | |
Bits, | |||
Default | |||
) | Out.indent(4) << #Name << ": " << DiagOpts->Name << "\n"; |
#define VALUE_LANGOPT | ( | Name, | |
Bits, | |||
Default, | |||
Description | |||
) | Out.indent(4) << Description << ": " << LangOpts.Name << "\n"; |
static std::error_code addHeaderInclude | ( | StringRef | HeaderName, |
SmallVectorImpl< char > & | Includes, | ||
const LangOptions & | LangOpts, | ||
bool | IsExternC | ||
) | [static] |
Definition at line 135 of file Frontend/FrontendActions.cpp.
Referenced by addHeaderInclude(), clang::GenerateModuleAction::BeginSourceFileAction(), and collectModuleHeaderIncludes().
static std::error_code addHeaderInclude | ( | const FileEntry * | Header, |
SmallVectorImpl< char > & | Includes, | ||
const LangOptions & | LangOpts, | ||
bool | IsExternC | ||
) | [static] |
Definition at line 162 of file Frontend/FrontendActions.cpp.
References addHeaderInclude(), and clang::FileEntry::getName().
static std::error_code collectModuleHeaderIncludes | ( | const LangOptions & | LangOpts, |
FileManager & | FileMgr, | ||
ModuleMap & | ModMap, | ||
clang::Module * | Module, | ||
SmallVectorImpl< char > & | Includes | ||
) | [static] |
Collect the set of header includes needed to construct the given module and update the TopHeaders file set of the module.
Module | The module we're collecting includes from. |
Includes | Will be augmented with the set of #includes or #imports needed to load all of the named headers. |
Definition at line 177 of file Frontend/FrontendActions.cpp.
References addHeaderInclude(), clang::Module::addTopHeader(), clang::FileManager::getFile(), clang::Module::getUmbrellaDir(), clang::Module::getUmbrellaHeader(), clang::Module::isAvailable(), clang::Module::IsExternC, clang::ModuleMap::isHeaderUnavailableInModule(), clang::Module::NormalHeaders, clang::Module::Parent, clang::Module::submodule_begin(), and clang::Module::submodule_end().
Referenced by clang::GenerateModuleAction::BeginSourceFileAction().
static SmallVectorImpl<char>& operator+= | ( | SmallVectorImpl< char > & | Includes, |
StringRef | RHS | ||
) | [static] |
Definition at line 130 of file Frontend/FrontendActions.cpp.