26 #ifndef NFD_TOOLS_NFDC_COMMAND_PARSER_HPP
27 #define NFD_TOOLS_NFDC_COMMAND_PARSER_HPP
33 #include <type_traits>
69 : std::invalid_argument(
"No such command: " + noun +
" " + verb)
87 addAlias(
const std::string& noun,
const std::string& verb,
const std::string& verb2);
94 std::vector<const CommandDefinition*>
104 std::tuple<std::string, std::string, CommandArguments, ExecuteCommand>
105 parse(
const std::vector<std::string>& tokens,
ParseMode mode)
const;
108 using CommandName = std::pair<std::string, std::string>;
119 using CommandContainer = std::map<CommandName, shared_ptr<Command>>;
120 CommandContainer m_commands;
124 std::vector<CommandContainer::const_iterator> m_commandOrder;