diff options
Diffstat (limited to 'src/buildtool/common/cli.hpp')
-rw-r--r-- | src/buildtool/common/cli.hpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/buildtool/common/cli.hpp b/src/buildtool/common/cli.hpp index a95cac5f..7bc0317a 100644 --- a/src/buildtool/common/cli.hpp +++ b/src/buildtool/common/cli.hpp @@ -49,6 +49,11 @@ struct AnalysisArguments { std::optional<std::filesystem::path> artifacts_to_build_file{}; }; +/// \brief Arguments required for describing targets/rules. +struct DescribeArguments { + bool describe_rule{}; +}; + /// \brief Arguments required for running diagnostics. struct DiagnosticArguments { std::optional<std::string> dump_actions{std::nullopt}; @@ -217,6 +222,14 @@ static inline auto SetupAnalysisArguments( } } +static inline auto SetupDescribeArguments( + gsl::not_null<CLI::App*> const& app, + gsl::not_null<DescribeArguments*> const& clargs) { + app->add_flag("--rule", + clargs->describe_rule, + "Positional arguments refer to rule instead of target."); +} + static inline auto SetupDiagnosticArguments( gsl::not_null<CLI::App*> const& app, gsl::not_null<DiagnosticArguments*> const& clargs) { |