Module: Enumerable
- Defined in:
- lib/ex_aequo/base/enumerable.rb
Instance Method Summary collapse
- #find_value(&blk) ⇒ Object
- #reduce_until(initial, *end_triggers, &blk) ⇒ Object
- #reduce_while(initial, *end_triggers, &blk) ⇒ Object
Instance Method Details
#find_value(&blk) ⇒ Object
5 6 7 8 9 10 11 |
# File 'lib/ex_aequo/base/enumerable.rb', line 5 def find_value(&blk) each do val = blk.(it) return val if val end nil end |
#reduce_until(initial, *end_triggers, &blk) ⇒ Object
13 14 15 16 17 |
# File 'lib/ex_aequo/base/enumerable.rb', line 13 def reduce_until(initial, *end_triggers, &blk) raise ArgumentError, "missing end_trigger(s)" if end_triggers.empty? ExAequo::Base::Enumerable::EnumerableHelper.reduce_until_with_trigger(self, initial:, end_triggers:, &blk) end |
#reduce_while(initial, *end_triggers, &blk) ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/ex_aequo/base/enumerable.rb', line 19 def reduce_while(initial, *end_triggers, &blk) if end_triggers.empty? ExAequo::Base::Enumerable::EnumerableHelper.reduce_while_simple(self, initial:, &blk) else ExAequo::Base::Enumerable::EnumerableHelper.reduce_while_with_trigger(self, initial:, end_triggers:, &blk) end end |