0

简单的东西

class Thunk[+A](body: => A) {
  lazy val result: A = body;
}

它是在某处定义的吗?

或者也许更复杂一点

class Thunk[+A](body: => A) {
  private[this] var evaluatedInternal = false;

  lazy val result: A = {
    evaluatedInternal = true;
    body;
  }

  def evaluated: Boolean = evaluatedInternal;
}
4

1 回答 1

0

有一些类NameNeedScala 中提供了这种功能。另请参阅 Scalaz问题 #427

于 2013-07-20T08:03:52.500 回答