From a712dd5bbe8d2b4b433ce90f7d977acf762ad080 Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Mon, 6 Aug 2012 21:37:43 +0200 Subject: Completions functions take a Context parameter --- src/command_manager.hh | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src/command_manager.hh') diff --git a/src/command_manager.hh b/src/command_manager.hh index a440de59..298b9056 100644 --- a/src/command_manager.hh +++ b/src/command_manager.hh @@ -26,19 +26,22 @@ using CommandParameters = memoryview; typedef std::function Command; -typedef std::function CommandCompleter; class PerArgumentCommandCompleter { public: - typedef std::function ArgumentCompleter; + typedef std::function ArgumentCompleter; typedef memoryview ArgumentCompleterList; PerArgumentCommandCompleter(const ArgumentCompleterList& completers) : m_completers(completers.begin(), completers.end()) {} - CandidateList operator()(const CommandParameters& params, + CandidateList operator()(const Context& context, + const CommandParameters& params, size_t token_to_complete, size_t pos_in_token) const; @@ -52,7 +55,8 @@ public: void execute(const String& command_line, const Context& context, const EnvVarMap& env_vars = EnvVarMap()); - Completions complete(const String& command_line, size_t cursor_pos); + Completions complete(const Context& context, + const String& command_line, size_t cursor_pos); bool command_defined(const String& command_name) const; -- cgit v1.2.3