Method: Tb::Zipper#call

Defined in:
lib/tb/zipper.rb

#call(ary1, ary2) ⇒ Object



43
44
45
46
47
48
49
50
# File 'lib/tb/zipper.rb', line 43

def call(ary1, ary2)
  if ary1.length != @ops.length || ary2.length != @ops.length
    raise ArgumentError, "expect an array of arrays which lengths are #{@ops.length}"
  end
  @ops.zip(ary1, ary2).map {|op, v1, v2|
    op.call(v1, v2)
  }
end