unapplyval.scala

来自「JAVA 语言的函数式编程扩展」· SCALA 代码 · 共 38 行

SCALA
38
字号
package test // bug #1215class Async {  def unapply(scrut: Any): Option[Any] = None}class Buffer {  val Put = new Async  //case class Put(x: int)  def joinPat(x: Any): Unit = {    x match {      case Put =>       case Put(y) =>        println("returning "+y)    }  }}object unapplyJoins extends Application { // bug #1257  class Sync {    def apply(): Int = 42    def unapply(scrut: Any): Boolean = false  }  class Buffer {    object Get extends Sync    val jp: PartialFunction[Any, Any] = {      case Get() =>     }  }  println((new Buffer).jp.isDefinedAt(42))}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?