26 #ifndef NFD_TOOLS_NFDC_COMMAND_PARSER_HPP
27 #define NFD_TOOLS_NFDC_COMMAND_PARSER_HPP
32 #include <type_traits>
68 : std::invalid_argument(
"No such command: " + noun +
" " + verb)
86 addAlias(
const std::string& noun,
const std::string& verb,
const std::string& verb2);
93 std::vector<const CommandDefinition*>
103 std::tuple<std::string, std::string, CommandArguments, ExecuteCommand>
104 parse(
const std::vector<std::string>& tokens,
ParseMode mode)
const;
107 using CommandName = std::pair<std::string, std::string>;
118 using CommandContainer = std::map<CommandName, shared_ptr<Command>>;
119 CommandContainer m_commands;
123 std::vector<CommandContainer::const_iterator> m_commandOrder;