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.



111
112
113
114
115
116
# File 'lib/nodes/basenodes.rb', line 111

def initialize(lhs, rhs)
  @lhs, @rhs = lhs, rhs
  return unless @rhs.class.method_defined?(:lhs)

  @rhs.lhs = @lhs.lhs if @rhs.lhs == nil
end

Instance Method Details

#evaluateObject



122
123
124
# File 'lib/nodes/basenodes.rb', line 122

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

#to_sObject



118
119
120
# File 'lib/nodes/basenodes.rb', line 118

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