diff options
-rw-r--r-- | clang/include/clang/Tooling/Execution.h | 7 | ||||
-rw-r--r-- | clang/lib/Tooling/Execution.cpp | 16 |
2 files changed, 20 insertions, 3 deletions
diff --git a/clang/include/clang/Tooling/Execution.h b/clang/include/clang/Tooling/Execution.h index 9d07c5659e9..1a44c4788c4 100644 --- a/clang/include/clang/Tooling/Execution.h +++ b/clang/include/clang/Tooling/Execution.h @@ -162,6 +162,13 @@ createExecutorFromCommandLineArgs(int &argc, const char **argv, llvm::cl::OptionCategory &Category, const char *Overview = nullptr); +namespace internal { +llvm::Expected<std::unique_ptr<ToolExecutor>> +createExecutorFromCommandLineArgsImpl(int &argc, const char **argv, + llvm::cl::OptionCategory &Category, + const char *Overview = nullptr); +} // end namespace internal + } // end namespace tooling } // end namespace clang diff --git a/clang/lib/Tooling/Execution.cpp b/clang/lib/Tooling/Execution.cpp index 1a078ef7e12..0e3404f91c8 100644 --- a/clang/lib/Tooling/Execution.cpp +++ b/clang/lib/Tooling/Execution.cpp @@ -54,10 +54,11 @@ llvm::Error ToolExecutor::execute(std::unique_ptr<FrontendActionFactory> Action, return execute(Actions); } +namespace internal { llvm::Expected<std::unique_ptr<ToolExecutor>> -createExecutorFromCommandLineArgs(int &argc, const char **argv, - llvm::cl::OptionCategory &Category, - const char *Overview) { +createExecutorFromCommandLineArgsImpl(int &argc, const char **argv, + llvm::cl::OptionCategory &Category, + const char *Overview) { auto OptionsParser = CommonOptionsParser::create(argc, argv, Category, llvm::cl::ZeroOrMore, /*Overview=*/nullptr); @@ -84,6 +85,15 @@ createExecutorFromCommandLineArgs(int &argc, const char **argv, llvm::Twine("Executor \"") + ExecutorName + "\" is not registered.", llvm::inconvertibleErrorCode()); } +} // end namespace internal + +llvm::Expected<std::unique_ptr<ToolExecutor>> +createExecutorFromCommandLineArgs(int &argc, const char **argv, + llvm::cl::OptionCategory &Category, + const char *Overview) { + return internal::createExecutorFromCommandLineArgsImpl(argc, argv, Category, + Overview); +} } // end namespace tooling } // end namespace clang |