class Wongi::Engine::DSL::Action::TraceAction

Attributes

io[R]

Public Class Methods

new(opts = { }) click to toggle source
# File lib/wongi-engine/dsl/action/trace_action.rb, line 24
def initialize opts = { }
  [:generation, :values, :tracer, :tracer_class, :io].each do |option|
    if opts.has_key? option
      instance_variable_set "@#{option}", opts[option]
    end
  end
  @io ||= $stdout
  @tracer ||= (@tracer_class || DefaultTracer).new
  @tracer.action = self
end

Public Instance Methods

execute(token) click to toggle source
# File lib/wongi-engine/dsl/action/trace_action.rb, line 39
def execute token
  production.tracer = self
  if values?
    trace action: self, token: token
  else
    trace action: self
  end
end
trace(args) click to toggle source
# File lib/wongi-engine/dsl/action/trace_action.rb, line 35
def trace args
  @tracer.trace args
end