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.