From eecc5a184e4a3aacaf2984f2171a58440bebc43c Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Tue, 13 Sep 2011 21:16:48 +0000 Subject: CommandManager: basic command name completion support --- src/command_manager.hh | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/command_manager.hh') diff --git a/src/command_manager.hh b/src/command_manager.hh index 2f014838..fc3d81f3 100644 --- a/src/command_manager.hh +++ b/src/command_manager.hh @@ -20,10 +20,21 @@ struct wrong_argument_count : runtime_error typedef std::vector CommandParameters; typedef std::function Command; +struct Completions +{ + CommandParameters candidates; + size_t start; + size_t end; + + Completions(size_t start, size_t end) + : start(start), end(end) {} +}; + class CommandManager { public: void execute(const std::string& command_line); + Completions complete(const std::string& command_line, size_t cursor_pos); void register_command(const std::string& command_name, Command command); void register_command(const std::vector& command_names, Command command); -- cgit v1.2.3