Class: Wongi::Engine::ErrorGenerator

Inherits:
Action
  • Object
show all
Defined in:
lib/wongi-engine/dsl/actions/error_generator.rb

Instance Attribute Summary

Attributes inherited from Action

#name, #production, #rete, #rule

Instance Method Summary collapse

Methods included from CoreExt

included

Constructor Details

#initialize(message = nil, &messenger) ⇒ ErrorGenerator

Returns a new instance of ErrorGenerator.



16
17
18
# File 'lib/wongi-engine/dsl/actions/error_generator.rb', line 16

def initialize message = nil, &messenger
  @message, @messenger = message, messenger
end

Instance Method Details

#errorsObject



25
26
27
28
29
30
31
32
33
34
# File 'lib/wongi-engine/dsl/actions/error_generator.rb', line 25

def errors
  production.tokens.map do |token|
    message = if @messenger
      @messenger.call token.assignments
    else
      @message
    end
    ReteError.new token, message, literate?
  end
end

#literate?Boolean

Returns:

  • (Boolean)


36
37
38
# File 'lib/wongi-engine/dsl/actions/error_generator.rb', line 36

def literate?
  not @messenger.nil?
end

#rete=Object



20
21
22
23
# File 'lib/wongi-engine/dsl/actions/error_generator.rb', line 20

def rete=
  super
  rete.add_collector :error, self
end