Class: Arrow::Slicer::LogicalCondition
- Defined in:
- lib/arrow/slicer.rb
Direct Known Subclasses
Instance Method Summary collapse
- #evaluate ⇒ Object
-
#initialize(condition1, condition2) ⇒ LogicalCondition
constructor
A new instance of LogicalCondition.
Methods inherited from Condition
Constructor Details
#initialize(condition1, condition2) ⇒ LogicalCondition
Returns a new instance of LogicalCondition.
66 67 68 69 |
# File 'lib/arrow/slicer.rb', line 66 def initialize(condition1, condition2) @condition1 = condition1 @condition2 = condition2 end |
Instance Method Details
#evaluate ⇒ Object
71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/arrow/slicer.rb', line 71 def evaluate values1 = @condition1.evaluate.each values2 = @condition2.evaluate.each raw_array = [] begin loop do value1 = values1.next value2 = values2.next if value1.nil? or value2.nil? raw_array << nil else raw_array << evaluate_value(value1, value2) end end rescue StopIteration end BooleanArray.new(raw_array) end |