调用使用隐式的curried函数

时间:2016-06-30 09:40:55

标签: scala implicit

鉴于功能

def func(implicit x: Foo, y: Bar): (ThingA => ThingB) = ???`

我无法弄清楚如何在一条线上调用它。显然,这可以通过将返回的函数存储在val:

中来实现
val f = func // Foo and Bar are implicitly applied
f(ThingA)

但如果没有赋值给val怎么办? func(ThingA)自然会抱怨func被调用的论点太少了。

1 个答案:

答案 0 :(得分:5)

最简单的可能是明确调用apply

func.apply(ThingA)