class Wongi::Engine::AssumingClause
Attributes
base_rule_name[R]
Public Class Methods
new(base_rule_name)
click to toggle source
# File lib/wongi-engine/dsl/assuming.rb, line 17 def initialize base_rule_name @base_rule_name = base_rule_name end
Public Instance Methods
compile(context)
click to toggle source
# File lib/wongi-engine/dsl/assuming.rb, line 21 def compile context base_production = context.rete.productions[base_rule_name] raise UndefinedBaseRule.new(base_rule_name) unless base_production raise DefinitionError.new("'assuming' cannot be preceded by other matchers") unless context.node.root? raise StandardError.new("missing base context") unless base_production.compilation_context base_production.compilation_context.dup end