clang-tools  11.0.0git
Classes | Namespaces | Typedefs | Functions
Preamble.h File Reference
#include "CollectMacros.h"
#include "Compiler.h"
#include "Diagnostics.h"
#include "FS.h"
#include "Headers.h"
#include "index/CanonicalIncludes.h"
#include "support/Path.h"
#include "clang/Frontend/CompilerInvocation.h"
#include "clang/Frontend/PrecompiledPreamble.h"
#include "clang/Lex/Lexer.h"
#include "clang/Tooling/CompilationDatabase.h"
#include "llvm/ADT/StringRef.h"
#include <memory>
#include <string>
#include <vector>
Include dependency graph for Preamble.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  clang::clangd::PreambleData
 The parsed preamble and associated data. More...
 
class  clang::clangd::PreamblePatch
 Stores information required to parse a TU using a (possibly stale) Baseline preamble. More...
 

Namespaces

 clang
 ===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
 
 clang::clangd
 

Typedefs

using clang::clangd::PreambleParsedCallback = std::function< void(ASTContext &, std::shared_ptr< clang::Preprocessor >, const CanonicalIncludes &)>
 

Functions

std::shared_ptr< const PreambleData > clang::clangd::buildPreamble (PathRef FileName, CompilerInvocation CI, const ParseInputs &Inputs, bool StoreInMemory, PreambleParsedCallback PreambleCallback)
 Build a preamble for the new inputs unless an old one can be reused. More...
 
bool clang::clangd::isPreambleCompatible (const PreambleData &Preamble, const ParseInputs &Inputs, PathRef FileName, const CompilerInvocation &CI)
 Returns true if Preamble is reusable for Inputs. More...
 
SourceLocation clang::clangd::translatePreamblePatchLocation (SourceLocation Loc, const SourceManager &SM)
 Translates locations inside preamble patch to their main-file equivalent using presumed locations. More...