Como posso chamar uma função de módulo dentro do Enum.map sem obter um erro de "Referência indefinida"?
Eu tenho um módulo simples que contém uma única função:
defmodule Funcs do
def double(x) do
x*2
end
end
Quando eu começoiex
com o nome do arquivo como argumento, posso chamar a função muito bem:
iex(5)> Funcs.double(3)
6
Mas quando eu tento usá-lo emEnum.map
Eu recebo umundefined function
erro:
iex(2)> Enum.map([1,2,3,4], Funcs.double)
** (UndefinedFunctionError) undefined function: Funcs.double/0
Funcs.double()
enquanto que se eu apenas usar uma função anônima análoga, tudo funcionará conforme o esperado:
iex(6)> Enum.map([1,2,3,4], fn(x) -> x*2; end)
[2, 4, 6, 8]
Como posso usar uma função de módulo (sem saber se esse é o termo correto) como argumento para o Enum.map?