f: A => B => ... => Z
scala/scalaz/shapeless/etcの一般的なエンリッチメントはありますか? そのようなf.uncurried:(A, B, ...) => Z
?
現在、私はこれを持っていますが、既存のより一般的な解決策がどこかにあるに違いないと思います。
implicit def enrichMyCurriedFunction[A, B, C] = new EnrichedCurriedFunction[A, B, C](_)
class EnrichedCurriedFunction[A, B, C](f: A => B => C) {
def uncurried: (A, B) => C = (a, b) => f(a)(b)
}