module Console::ClassMethods

Public Instance Methods

commands() click to toggle source
# File lib/console.rb, line 33
def commands
  @commands ||= {}
end
define_cmd(name, desc, &block) click to toggle source
# File lib/console.rb, line 16
def define_cmd(name, desc, &block)
  commands[name.to_s] = {desc: desc, block: block}
end
run_cmd(instance, cmd_name, args = []) click to toggle source
# File lib/console.rb, line 20
def run_cmd(instance, cmd_name, args = [])
  cmd_name = cmd_name.to_s
  command = commands[cmd_name]

  if command
    instance.instance_exec(*args, &command[:block])
  else
    puts "Invalid command '#{cmd_name}'"
  end
rescue => e
  puts e.message
end