26#ifndef LLVM_CLANG_TOOLING_COMMONOPTIONSPARSER_H 
   27#define LLVM_CLANG_TOOLING_COMMONOPTIONSPARSER_H 
   31#include "llvm/Support/CommandLine.h" 
   32#include "llvm/Support/Error.h" 
   82      int &argc, 
const char **argv, llvm::cl::OptionCategory &Category,
 
   83      llvm::cl::NumOccurrencesFlag OccurrencesFlag = llvm::cl::OneOrMore,
 
   84      const char *Overview = 
nullptr);
 
   90  create(
int &argc, 
const char **argv, llvm::cl::OptionCategory &Category,
 
   91         llvm::cl::NumOccurrencesFlag OccurrencesFlag = llvm::cl::OneOrMore,
 
   92         const char *Overview = 
nullptr);
 
  101    return SourcePathList;
 
 
  113  llvm::Error init(
int &argc, 
const char **argv,
 
  114                   llvm::cl::OptionCategory &Category,
 
  115                   llvm::cl::NumOccurrencesFlag OccurrencesFlag,
 
  116                   const char *Overview);
 
  118  std::unique_ptr<CompilationDatabase> Compilations;
 
  119  std::vector<std::string> SourcePathList;
 
 
  126      std::unique_ptr<CompilationDatabase> Compilations)
 
  127      : Compilations(
std::move(Compilations)) {}
 
 
  131  std::vector<CompileCommand>
 
  134  std::vector<std::string> 
getAllFiles() 
const override;
 
  139  std::unique_ptr<CompilationDatabase> Compilations;
 
  140  std::vector<ArgumentsAdjuster> Adjusters;
 
  142  std::vector<CompileCommand>
 
  143  adjustCommands(std::vector<CompileCommand> Commands) 
const;
 
 
The JSON file list parser is used to communicate input to InstallAPI.