16  return llvm::make_error<llvm::StringError>(Message,
 
   17                                             llvm::inconvertibleErrorCode());
 
 
   33    std::shared_ptr<PCHContainerOperations> PCHContainerOps)
 
   34    : Tool(Compilations, SourcePaths, 
std::move(PCHContainerOps),
 
   39  Tool.clearArgumentsAdjusters();
 
 
   44    std::shared_ptr<PCHContainerOperations> PCHContainerOps)
 
   45    : OptionsParser(
std::move(Options)),
 
   46      Tool(OptionsParser->getCompilations(), OptionsParser->getSourcePathList(),
 
   47           std::move(PCHContainerOps)),
 
   49  Tool.clearArgumentsAdjusters();
 
 
   59  if (Actions.size() != 1)
 
   61        "Only support executing exactly 1 action at this point.");
 
   63  auto &Action = Actions.front();
 
   64  Tool.appendArgumentsAdjuster(Action.second);
 
   65  Tool.appendArgumentsAdjuster(ArgsAdjuster);
 
   66  if (Tool.run(Action.first.get()))
 
   69  return llvm::Error::success();
 
 
   78          "[StandaloneToolExecutorPlugin] No positional argument found.");
 
   79    return std::make_unique<StandaloneToolExecutor>(std::move(OptionsParser));
 
 
 
   83static ToolExecutorPluginRegistry::Add<StandaloneToolExecutorPlugin>
 
   84    X(
"standalone", 
"Runs FrontendActions on a set of files provided " 
   85                    "via positional arguments.");
 
The JSON file list parser is used to communicate input to InstallAPI.