Class: Array
Instance Method Summary collapse
-
#rcount_matching ⇒ Fixnum
Returns count of items that matches, iteration starts at the end and stops on first not matching item.
-
#rindex_last_matching ⇒ Fixnum
Returns index of last matching item when iterating from back to start of
self.
Instance Method Details
#rcount_matching ⇒ Fixnum
Returns count of items that matches, iteration starts at the end and stops on first not matching item.
30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/bade/ruby_extensions/array.rb', line 30 def rcount_matching count = 0 reverse_each do |item| break unless yield item count += 1 end count end |
#rindex_last_matching ⇒ Fixnum
Returns index of last matching item when iterating from back to start of self.
Returns nil when the first item does not match (when iterating from back).
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/bade/ruby_extensions/array.rb', line 10 def rindex_last_matching return nil if empty? index = nil current_index = count - 1 reverse_each do |item| break unless yield item index = current_index current_index -= 1 end index end |