向分部函数添加新参数



是否有一些简单的方法可以向分部函数添加新的参数,以便在与以前相同的域中定义结果函数(新参数对其分部性没有影响)?以下代码有效,但似乎有点冗长。

  val func : PartialFunction[A, B] = ....
  val f = new PartialFunction[(A,C), B] {
    def isDefinedAt(x: (A,C)): Boolean = func.isDefinedAt(x._1)
    def apply(x: (A,C)):B = func(x._1)
  }

您可以这样做:

val f : PartialFunction[(A, C), B] = { case (a, _) if func.isDefinedAt(a) => func(a) }

相关内容

  • 没有找到相关文章

最新更新