16 return llvm::make_error<llvm::StringError>(Message,
17 llvm::inconvertibleErrorCode());
33 std::shared_ptr<PCHContainerOperations> PCHContainerOps)
34 : Tool(Compilations, SourcePaths,
std::move(PCHContainerOps),
44 std::shared_ptr<PCHContainerOperations> PCHContainerOps)
45 : OptionsParser(
std::move(Options)),
46 Tool(OptionsParser->getCompilations(), OptionsParser->getSourcePathList(),
47 std::move(PCHContainerOps)),
59 if (Actions.size() != 1)
61 "Only support executing exactly 1 action at this point.");
63 auto &Action = Actions.front();
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.