Refactored command base class for simplicity.

This commit is contained in:
2017-10-13 18:14:24 +02:00
parent 5427876e36
commit 2be3f4256a
3 changed files with 22 additions and 13 deletions

View File

@@ -32,13 +32,16 @@
//
////////////////////////////////////////////////////////////////////////////////////////////////////
CommandTranslate::CommandTranslate()
: Command(cxxopts::Options("plasp translate", "Translate PDDL to ASP."))
{
}
////////////////////////////////////////////////////////////////////////////////////////////////////
int CommandTranslate::run(int argc, char **argv)
{
cxxopts::Options options("plasp translate", "Translate PDDL to ASP.");
addOptionGroupsTo(options);
options.parse(argc, argv);
parseOptionGroups(options);
parseOptions(argc, argv);
const auto &basicOptions = std::get<OptionGroupBasic>(m_optionGroups);
const auto &outputOptions = std::get<OptionGroupOutput>(m_optionGroups);
@@ -46,7 +49,7 @@ int CommandTranslate::run(int argc, char **argv)
if (basicOptions.help)
{
printHelp(options);
printHelp();
return EXIT_SUCCESS;
}
@@ -102,7 +105,7 @@ int CommandTranslate::run(int argc, char **argv)
{
logger.log(colorlog::Priority::Error, "unknown input language");
std::cout << std::endl;
printHelp(options);
printHelp();
return EXIT_FAILURE;
}