Method: Lono::Completer#run

Defined in:
lib/lono/completer.rb

#runObject



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# File 'lib/lono/completer.rb', line 80

def run
  if subcommand?(@current_command)
    subcommand_class = @command_class.subcommand_classes[@current_command]
    @params.shift # destructive
    Completer.new(subcommand_class, *@params).run # recursively use subcommand
    return
  end

  # full command has been found!
  unless found?(@current_command)
    puts all_commands
    return
  end

  # will only get to here if command aws found (above)
  arity = @command_class.instance_method(@current_command).arity.abs
  if @params.size > arity or thor_group_command?
    puts options_completion
  else
    puts params_completion
  end
end