From d14c39ebddecb2e154bfe0e87fcb34419380c5e5 Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Sun, 18 Sep 2016 16:07:00 +0100 Subject: Rewrite PerArgumentCommandCompleter to use compile time dispatching No need to store these vectors of std::functions around anymore. --- src/command_manager.cc | 19 ------------------- 1 file changed, 19 deletions(-) (limited to 'src/command_manager.cc') diff --git a/src/command_manager.cc b/src/command_manager.cc index ef2fef5c..250a5fe4 100644 --- a/src/command_manager.cc +++ b/src/command_manager.cc @@ -672,23 +672,4 @@ Completions CommandManager::complete(const Context& context, return Completions{}; } -Completions PerArgumentCommandCompleter::operator()(const Context& context, - CompletionFlags flags, - CommandParameters params, - size_t token_to_complete, - ByteCount pos_in_token) - const -{ - if (token_to_complete >= m_completers.size()) - return Completions{}; - - // it is possible to try to complete a new argument - kak_assert(token_to_complete <= params.size()); - - const String& argument = token_to_complete < params.size() ? - params[token_to_complete] : String(); - return m_completers[token_to_complete](context, flags, argument, - pos_in_token); -} - } -- cgit v1.2.3