我正在尝试剖析并理解可枚举协议中的工作acc/0
原理。reducer/0
def map(enumerable, fun) do
reducer = fn x, acc -> {:cont, [fun.(x) | acc]} end
Enumerable.reduce(enumerable, {:cont, []}, reducer) |> elem(1) |> :lists.reverse()
end
有人可以从每个枚举中的 x、acc 的值开始解释这一点吗
我正在尝试剖析并理解可枚举协议中的工作acc/0
原理。reducer/0
def map(enumerable, fun) do
reducer = fn x, acc -> {:cont, [fun.(x) | acc]} end
Enumerable.reduce(enumerable, {:cont, []}, reducer) |> elem(1) |> :lists.reverse()
end
有人可以从每个枚举中的 x、acc 的值开始解释这一点吗