【发布时间】:2011-02-10 14:38:22
【问题描述】:
问题说明了一切。
(然而,多年来,如何访问 shift 和 reset 操作的详细信息发生了变化。旧博客条目和 Stack Overflow 答案可能包含过时的信息。)
另请参阅What are Scala continuations and why use them?,其中讨论了您在拥有shift 和reset 后可能想要做什么。
【问题讨论】:
标签: scala continuations
问题说明了一切。
(然而,多年来,如何访问 shift 和 reset 操作的详细信息发生了变化。旧博客条目和 Stack Overflow 答案可能包含过时的信息。)
另请参阅What are Scala continuations and why use them?,其中讨论了您在拥有shift 和reset 后可能想要做什么。
【问题讨论】:
标签: scala continuations
Scala 2.11
最简单的方法是使用sbt:
scalaVersion := "2.11.6"
autoCompilerPlugins := true
addCompilerPlugin(
"org.scala-lang.plugins" % "scala-continuations-plugin_2.11.6" % "1.0.2")
libraryDependencies +=
"org.scala-lang.plugins" %% "scala-continuations-library" % "1.0.2"
scalacOptions += "-P:continuations:enable"
在您的代码(或 REPL)中,执行 import scala.util.continuations._
您现在可以尽情使用shift 和reset。
Scala 2.8、2.9、2.10 的历史信息
您必须使用 -P:continuations:enable 标志启动 scala(或 scalac)。
在您的代码中,执行import scala.util.continuations._
您现在可以尽情使用shift 和reset。
如果您使用的是 sbt 0.7,请参阅 https://groups.google.com/forum/#!topic/simple-build-tool/Uj-7zl9n3f4
如果您使用的是 sbt 0.11+,请参阅 https://gist.github.com/1302944
如果您使用的是 maven,请参阅 http://scala-programming-language.1934581.n4.nabble.com/scala-using-continuations-plugin-with-2-8-0-RC1-and-maven-td2065949.html#a2065949
【讨论】:
非 SBT 解决方案:
scala -Xpluginsdir /.../scala/lib/ -P:continuations:enable
适用于 Scala 2.11.6,但插件/库 said 将不再包含在 Scala 2.12 中
【讨论】: