A.Vector.zip_with

You're seeing just the function zip_with, go back to A.Vector module for more information.
Link to this function

zip_with(vector1, vector2, zip_fun)

View Source

Specs

zip_with(t(val1), t(val2), (val1, val2 -> val3)) :: t(val3)
when val1: value(), val2: value(), val3: value()

Zips corresponding elements from two vectors into a new vector, transforming them with the zip_fun function as it goes.

The corresponding elements from each vector are passed to the provided 2-arity zip_fun function in turn.

Runs in linear time.

iex> A.Vector.zip_with(A.Vector.new([1, 2, 3]), A.Vector.new([:a, :b, :c]), &{&2, &1})
vec([a: 1, b: 2, c: 3])
iex> A.Vector.zip_with(A.Vector.new(0..100), A.Vector.new([:a, :b, :c]), &{&2, &1})
vec([a: 0, b: 1, c: 2])