Class: Array

Inherits:
Object
  • Object
show all
Defined in:
lib/nested_access/core_ext/array.rb

Instance Method Summary collapse

Instance Method Details

#nested_map(key_lambda = nil, value_lambda = nil, &blk) ⇒ Object

Raises:

  • (StandardError)


3
4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/nested_access/core_ext/array.rb', line 3

def nested_map key_lambda=nil, value_lambda=nil, &blk
  raise StandardError if block_given? and !(key_lambda.nil? and value_lambda.nil?)
  value_lambda = blk if block_given?
  inject([]) do |array, s|
    case s
      when Array, Hash
        array << s.nested_map(key_lambda, value_lambda)
      else
        array << value_lambda.call(s)
    end
    array
  end
end