class Rujure::Objects::Agent

Constants

AGENT
KEYWORD

Attributes

agent[R]

Public Class Methods

new(state, options=nil) click to toggle source
# File lib/rujure/objects/agent.rb, line 14
def initialize(state, options=nil)
  if options.nil?
    @agent = AGENT.invoke(state)
  else
    @agent = AGENT.invoke(state, *transform_options(options))
  end
end

Private Instance Methods

transform_options(options) click to toggle source
# File lib/rujure/objects/agent.rb, line 108
def transform_options(options)
  keys = options.keys.map { |k| KEYWORD.invoke(k.to_s) }
  values = options.values.map { |v| v.is_a?(::Proc) ? Rujure::ProcIFn.new(v) : v }
  keys.zip(values).flatten
end