Sagen wir, ich habe eine Funktion, die etwas ausführlich ist und mit den gleichen Argumenten jedes Mal aufgerufen wird, diese Funktion ist auch eine Menge Setup erforderlich, bevor andere Funktionen aus diesem Modul aufgerufen werden können sein Rückruf.Elixir - Passing-Funktion Parameter durch
SomeMod.called_a_lot(‘xx’, fn(y) ->
SomeMod.needs_called_a_lot_to_be_called_first(‘do_stuff’)
end)
Ich stelle mir vor, dass ich es wie so wickeln kann: es
defp easier_to_call(func) do
SomeMod.called_a_lot(‘xx’, fn(y) -> func(y) end
end
verwenden Sie dann etwa so:
easier_to_call(fn(y) ->
SomeMod.needs_called_a_lot_to_be_called_first(‘do_stuff’)
end)
Wie macht man tatsächlich tun dies in Elixir?
Ihr Code sieht gut aus; Ändern Sie einfach 'func (y)' in 'func. (y)' da es eine anonyme Funktion ist. – Dogbert