aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scala/async/Async.scala
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2012-11-22 00:28:21 +0100
committerJason Zaugg <jzaugg@gmail.com>2012-11-22 00:28:21 +0100
commit7f8e9876ca83db4ed7792f09f218b341fbc6c2b2 (patch)
tree46aa3de1e8fc9e2924089417ac3359ef0e780517 /src/main/scala/scala/async/Async.scala
parentb089630c223d510899ecf74f0cd57b0ae3ad3842 (diff)
downloadscala-async-7f8e9876ca83db4ed7792f09f218b341fbc6c2b2.tar.gz
scala-async-7f8e9876ca83db4ed7792f09f218b341fbc6c2b2.tar.bz2
scala-async-7f8e9876ca83db4ed7792f09f218b341fbc6c2b2.zip
Minimize lifting of vars.
Diffstat (limited to 'src/main/scala/scala/async/Async.scala')
-rw-r--r--src/main/scala/scala/async/Async.scala10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/main/scala/scala/async/Async.scala b/src/main/scala/scala/async/Async.scala
index 94f42c0..bad693d 100644
--- a/src/main/scala/scala/async/Async.scala
+++ b/src/main/scala/scala/async/Async.scala
@@ -83,6 +83,10 @@ abstract class AsyncBase {
val traverser = new builder.LiftableVarTraverser
traverser.traverse(btree)
+ val renameMap = traverser.liftable.map {
+ vd =>
+ (vd.symbol, builder.name.fresh(vd.name))
+ }.toMap
AsyncUtils.vprintln(s"In file '${c.macroApplication.pos.source.path}':")
AsyncUtils.vprintln(s"${c.macroApplication}")
@@ -93,7 +97,7 @@ abstract class AsyncBase {
case tree => (Nil, tree)
}
- val asyncBlockBuilder = new builder.AsyncBlockBuilder(stats, expr, 0, 1000, 1000, Map())
+ val asyncBlockBuilder = new builder.AsyncBlockBuilder(stats, expr, 0, 1000, 1000, renameMap)
asyncBlockBuilder.asyncStates foreach (s => AsyncUtils.vprintln(s))
@@ -101,10 +105,6 @@ abstract class AsyncBase {
val initStates = asyncBlockBuilder.asyncStates.init
val localVarTrees = asyncBlockBuilder.asyncStates.flatMap(_.allVarDefs).toList
- val renameMap = traverser.liftable.map {
- vd =>
- (vd.symbol, c.fresh(vd.name))
- }.toMap
/*
lazy val onCompleteHandler = (tr: Try[Any]) => state match {