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>
 
  240std::unique_ptr<CompilationDatabase>
 
  245std::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.