#ifndef __PLASP_APP__COMMAND_H #define __PLASP_APP__COMMAND_H #include #include #include //////////////////////////////////////////////////////////////////////////////////////////////////// // // Command // //////////////////////////////////////////////////////////////////////////////////////////////////// template class Command { protected: void addOptionGroupsTo(cxxopts::Options &options) { forEach(m_optionGroups, [&](auto &optionGroup) { optionGroup.addTo(options); }); } void parseOptionGroups(cxxopts::Options &options) { forEach(m_optionGroups, [&](auto &optionGroup) { optionGroup.parse(options); }); } std::tuple m_optionGroups; }; //////////////////////////////////////////////////////////////////////////////////////////////////// #endif