Class: OrNode

Inherits:
Node
  • Object
show all
Defined in:
lib/nodes/basenodes.rb

Instance Attribute Summary

Attributes inherited from Node

#value

Instance Method Summary collapse

Constructor Details

#initialize(lhs, rhs) ⇒ OrNode

Returns a new instance of OrNode.



70
71
72
73
74
75
76
77
# File 'lib/nodes/basenodes.rb', line 70

def initialize(lhs, rhs)
  @lhs, @rhs = lhs, rhs
  if @rhs.class.method_defined? (:lhs)
    if @rhs.lhs == nil
      @rhs.lhs = @lhs.lhs
    end
  end
end

Instance Method Details

#evaluateObject



83
84
85
# File 'lib/nodes/basenodes.rb', line 83

def evaluate
  @lhs.evaluate || @rhs.evaluate
end

#to_sObject



79
80
81
# File 'lib/nodes/basenodes.rb', line 79

def to_s
  "#{@lhs} or #{@rhs}"
end