diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2017-06-23 16:00:29 +1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-06-23 16:00:29 +1000 |
commit | c5e701a2ec714ad472084b68f932cfa75df161af (patch) | |
tree | b4ac3103edec13c6bc6f8d6407c845672c22c352 /src/main/scala/scala/async/internal/ExprBuilder.scala | |
parent | 735033ede7107cf60a5f0000b3b663cd9f058820 (diff) | |
parent | b6c2609e2eed661ac8f0e19d62135253a3a28b0a (diff) | |
download | scala-async-c5e701a2ec714ad472084b68f932cfa75df161af.tar.gz scala-async-c5e701a2ec714ad472084b68f932cfa75df161af.tar.bz2 scala-async-c5e701a2ec714ad472084b68f932cfa75df161af.zip |
Merge pull request #172 from rorygraves/master
Reduce logging overhead and minor cleanups
Diffstat (limited to 'src/main/scala/scala/async/internal/ExprBuilder.scala')
-rw-r--r-- | src/main/scala/scala/async/internal/ExprBuilder.scala | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/main/scala/scala/async/internal/ExprBuilder.scala b/src/main/scala/scala/async/internal/ExprBuilder.scala index fe62cd6..002e5cc 100644 --- a/src/main/scala/scala/async/internal/ExprBuilder.scala +++ b/src/main/scala/scala/async/internal/ExprBuilder.scala @@ -4,10 +4,7 @@ package scala.async.internal import scala.collection.mutable.ListBuffer -import collection.mutable import language.existentials -import scala.reflect.api.Universe -import scala.reflect.api trait ExprBuilder { builder: AsyncMacro => @@ -370,11 +367,11 @@ trait ExprBuilder { c.Expr[futureSystem.Prom[T]](symLookup.memberRef(name.result)), lastStateBody) mkHandlerCase(lastState.state, Block(rhs.tree, Return(literalUnit))) } - asyncStates.toList match { + asyncStates match { case s :: Nil => List(caseForLastState) case _ => - val initCases = for (state <- asyncStates.toList.init) yield state.mkHandlerCaseForState[T] + val initCases = for (state <- asyncStates.init) yield state.mkHandlerCaseForState[T] initCases :+ caseForLastState } } @@ -442,7 +439,7 @@ trait ExprBuilder { * } */ def onCompleteHandler[T: WeakTypeTag]: Tree = { - val onCompletes = initStates.flatMap(_.mkOnCompleteHandler[T]).toList + val onCompletes = initStates.flatMap(_.mkOnCompleteHandler[T]) forever { adaptToUnit(toList(resumeFunTree)) } |