“&”没有参数

时间:2017-05-08 16:27:34

标签: elixir

我有这个:

    case test123(&(:some_module.test456(789))) do
      # ...
    end

错误:

invalid args for &, expected an expression in the format of &Mod.fun/arity, 
&local/arity or a capture containing at least one argument as &1, 
got: :some_module.test456(789)

但是,我没有一个参数可以传入它,之前它只是

 fn(_) -> :some_module.test456(789) end

如何解决?切换回“fn”?

1 个答案:

答案 0 :(得分:5)

&语法不能用于创建此类匿名函数,因为编译器无法知道您是要创建0还是1或2或更多arity函数。您必须继续使用fn(_) -> :some_module.test456(789) end