aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scala/async/internal/AsyncId.scala
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2013-11-11 23:17:11 +0100
committerJason Zaugg <jzaugg@gmail.com>2013-11-12 08:37:32 +0100
commit302a07c64e4cd3db91a654dcbc893ade0837ba8c (patch)
tree8eb296957c0d2bbf7e30600aab7a92bb25e26459 /src/main/scala/scala/async/internal/AsyncId.scala
parent490238d54d3476d681bfb0b7a04ac090e4e52d9f (diff)
downloadscala-async-302a07c64e4cd3db91a654dcbc893ade0837ba8c.tar.gz
scala-async-302a07c64e4cd3db91a654dcbc893ade0837ba8c.tar.bz2
scala-async-302a07c64e4cd3db91a654dcbc893ade0837ba8c.zip
Don't aggressively null out captured vars
Once they escape, we leave the references in the state machines fields untouched.
Diffstat (limited to 'src/main/scala/scala/async/internal/AsyncId.scala')
-rw-r--r--src/main/scala/scala/async/internal/AsyncId.scala3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/main/scala/scala/async/internal/AsyncId.scala b/src/main/scala/scala/async/internal/AsyncId.scala
index c123675..a794f93 100644
--- a/src/main/scala/scala/async/internal/AsyncId.scala
+++ b/src/main/scala/scala/async/internal/AsyncId.scala
@@ -27,6 +27,9 @@ object AsyncTestLV extends AsyncBase {
def asyncIdImpl[T: c.WeakTypeTag](c: Context)(body: c.Expr[T]): c.Expr[T] = asyncImpl[T](c)(body)(c.literalUnit)
var log: List[(String, Any)] = List()
+ def assertNulledOut(a: Any): Unit = assert(log.exists(_._2 == a), AsyncTestLV.log)
+ def assertNotNulledOut(a: Any): Unit = assert(!log.exists(_._2 == a), AsyncTestLV.log)
+ def clear() = log = Nil
def apply(name: String, v: Any): Unit =
log ::= (name -> v)