From b6c2609e2eed661ac8f0e19d62135253a3a28b0a Mon Sep 17 00:00:00 2001 From: Rory Graves Date: Wed, 21 Jun 2017 21:43:27 +0100 Subject: Reduce logging overhead and minor cleanups --- src/main/scala/scala/async/internal/ExprBuilder.scala | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'src/main/scala/scala/async/internal/ExprBuilder.scala') 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)) } -- cgit v1.2.3