clang-tools 20.0.0git
|
#include "Preamble.h"
#include "CollectMacros.h"
#include "Compiler.h"
#include "Config.h"
#include "Diagnostics.h"
#include "FS.h"
#include "FeatureModule.h"
#include "Headers.h"
#include "Protocol.h"
#include "SourceCode.h"
#include "clang-include-cleaner/Record.h"
#include "support/Logger.h"
#include "support/Path.h"
#include "support/ThreadsafeFS.h"
#include "support/Trace.h"
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/Type.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/DiagnosticLex.h"
#include "clang/Basic/DiagnosticOptions.h"
#include "clang/Basic/LangOptions.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Basic/TargetInfo.h"
#include "clang/Basic/TokenKinds.h"
#include "clang/Frontend/CompilerInstance.h"
#include "clang/Frontend/CompilerInvocation.h"
#include "clang/Frontend/FrontendActions.h"
#include "clang/Frontend/PrecompiledPreamble.h"
#include "clang/Lex/HeaderSearch.h"
#include "clang/Lex/Lexer.h"
#include "clang/Lex/PPCallbacks.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Lex/PreprocessorOptions.h"
#include "clang/Serialization/ASTReader.h"
#include "clang/Tooling/CompilationDatabase.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/IntrusiveRefCntPtr.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/ErrorOr.h"
#include "llvm/Support/FormatVariadic.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/VirtualFileSystem.h"
#include "llvm/Support/raw_ostream.h"
#include <cassert>
#include <chrono>
#include <cstddef>
#include <cstdint>
#include <cstdlib>
#include <functional>
#include <memory>
#include <optional>
#include <string>
#include <system_error>
#include <tuple>
#include <utility>
#include <vector>
Go to the source code of this file.
Namespaces | |
namespace | clang |
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===// | |
namespace | clang::clangd |
FIXME: Skip testing on windows temporarily due to the different escaping code mode. | |
Functions | |
std::shared_ptr< const PreambleData > | clang::clangd::buildPreamble (PathRef FileName, CompilerInvocation CI, const ParseInputs &Inputs, bool StoreInMemory, PreambleParsedCallback PreambleCallback, PreambleBuildStats *Stats=nullptr) |
Build a preamble for the new inputs unless an old one can be reused. | |
bool | clang::clangd::isPreambleCompatible (const PreambleData &Preamble, const ParseInputs &Inputs, PathRef FileName, const CompilerInvocation &CI) |
Returns true if Preamble is reusable for Inputs . | |
void | clang::clangd::escapeBackslashAndQuotes (llvm::StringRef Text, llvm::raw_ostream &OS) |
static std::vector< Diag > | clang::clangd::patchDiags (llvm::ArrayRef< Diag > BaselineDiags, const ScannedPreamble &BaselineScan, const ScannedPreamble &ModifiedScan) |
static std::string | clang::clangd::getPatchName (llvm::StringRef FileName) |
PreambleBounds Bounds = {0, false} |
Definition at line 334 of file Preamble.cpp.
Referenced by clang::clangd::buildPreamble(), clang::clangd::SelectionTree::createEach(), and clang::clangd::isPreambleCompatible().
tok::PPKeywordKind Directive = tok::PPKeywordKind::pp_not_keyword |
Definition at line 238 of file Preamble.cpp.
unsigned DirectiveLine |
Definition at line 234 of file Preamble.cpp.
std::vector<llvm::StringRef> Lines |
Definition at line 333 of file Preamble.cpp.
std::string MacroName |
Definition at line 240 of file Preamble.cpp.
Referenced by clang::tidy::bugprone::AssertSideEffectCheck::check(), clang::tidy::cppcoreguidelines::PreferMemberInitializerCheck::check(), clang::tidy::misc::StaticAssertCheck::check(), clang::clangd::CollectMainFileMacros::Defined(), clang::clangd::CollectMainFileMacros::Elifdef(), clang::clangd::CollectMainFileMacros::Elifndef(), clang::tidy::utils::exprHasBitFlagWithSpelling(), Modularize::getMacroExpandedString(), Modularize::getMacroUnexpandedString(), clang::tidy::google::getNewMacroName(), clang::clangd::getSymbolID(), clang::clangd::CollectMainFileMacros::Ifdef(), clang::clangd::CollectMainFileMacros::Ifndef(), clang::tidy::google::readability::isGoogletestTestMacro(), clang::clangd::CollectMainFileMacros::MacroDefined(), clang::clangd::CollectMainFileMacros::MacroExpands(), clang::clangd::CollectMainFileMacros::MacroUndefined(), clang::tidy::cppcoreguidelines::MacroUsageCheck::warnMacro(), and clang::tidy::cppcoreguidelines::MacroUsageCheck::warnNaming().
unsigned Offset |
Definition at line 237 of file Preamble.cpp.
std::string Text |
Definition at line 236 of file Preamble.cpp.