class Dramaturg::Prompter::MadCLIbs

Attributes

current_command[R]

Public Class Methods

new(script,config) click to toggle source
Calls superclass method Dramaturg::Prompter::Base::new
# File lib/dramaturg/prompter/madCLIbs.rb, line 9
def initialize(script,config)
  super
  @cli = ::MadCLIbs.new(separator: '')
  @cli.interrupt_handler = ->() { config[:ctrlc].(self, self.current_command) }
end

Private Instance Methods

doIO(display, map) click to toggle source
# File lib/dramaturg/prompter/madCLIbs.rb, line 34
def doIO(display, map)
  @cli.prompt(*display)
end
format_for_display(map) click to toggle source
# File lib/dramaturg/prompter/madCLIbs.rb, line 26
def format_for_display(map)
  ([prompt_for_display] +
    map.map do |k,v|
      @formatters[k.class].(v)
    end
  )
end
process_results(results, map) click to toggle source
# File lib/dramaturg/prompter/madCLIbs.rb, line 38
def process_results(results, map)
  map.each do |dmt_v, mcli_t|
    dmt_v.input(mcli_t.to_s) if dmt_v.respond_to? :input
  end
end
tr_method_map() click to toggle source
# File lib/dramaturg/prompter/madCLIbs.rb, line 16
def tr_method_map
  proc do |v|
    if v.kind_of? Value::OrDefault
      @cli.method :string
    else
      String.method :new
    end
  end
end