Module: Enumerable

Defined in:
lib/arkana/helpers/enumerable.rb

Overview

Enumerable extensions and utilities.

Instance Method Summary collapse

Instance Method Details

#filter_mapObject

NOTE: This is a backport of Ruby 2.7 filter_map. This method can be deleted when the minimum target Ruby version is 2.7 We’re not gating against redefining the method (e.g. via ‘unless Enumerable.method_defined? :filter_map`) because this would reduce the code coverage when analysing code coverage on Ruby versions >= 2.7



8
9
10
11
12
13
14
15
# File 'lib/arkana/helpers/enumerable.rb', line 8

def filter_map
  return to_enum(:filter_map) unless block_given?

  each_with_object([]) do |item, res|
    processed = yield(item)
    res << processed if processed
  end
end