27#ifndef LLVM_CLANG_TOOLING_COMPILATIONDATABASE_H
28#define LLVM_CLANG_TOOLING_COMPILATIONDATABASE_H
31#include "llvm/ADT/ArrayRef.h"
32#include "llvm/ADT/StringRef.h"
33#include "llvm/ADT/Twine.h"
34#include "llvm/Support/VirtualFileSystem.h"
103 static std::unique_ptr<CompilationDatabase>
110 static std::unique_ptr<CompilationDatabase>
117 static std::unique_ptr<CompilationDatabase>
130 StringRef FilePath)
const = 0;
136 virtual std::vector<std::string>
getAllFiles()
const {
return {}; }
183 static std::unique_ptr<FixedCompilationDatabase>
185 const Twine &Directory =
".");
189 static std::unique_ptr<FixedCompilationDatabase>
194 static std::unique_ptr<FixedCompilationDatabase>
207 std::vector<CompileCommand>
213 std::vector<CompileCommand> CompileCommands;
228std::unique_ptr<CompilationDatabase>
234std::unique_ptr<CompilationDatabase>
239std::unique_ptr<CompilationDatabase>
Forward-declares and imports various common LLVM datatypes that clang wants to use unqualified.
The JSON file list parser is used to communicate input to InstallAPI.