diff options
author | Philipp Haller <hallerp@gmail.com> | 2013-10-13 22:48:53 +0200 |
---|---|---|
committer | Philipp Haller <hallerp@gmail.com> | 2013-10-18 11:22:34 +0200 |
commit | d1e267b8836be2c55f34a4c2f177da5f575f907a (patch) | |
tree | c14fe069ac6670e7bde5c3b14e3c6d3f6c3e8f45 /src | |
parent | 3e4ebede950ea8aa992163626c01e7bdb8d83d96 (diff) | |
download | scala-async-d1e267b8836be2c55f34a4c2f177da5f575f907a.tar.gz scala-async-d1e267b8836be2c55f34a4c2f177da5f575f907a.tar.bz2 scala-async-d1e267b8836be2c55f34a4c2f177da5f575f907a.zip |
Simplify a generated CaseDef tree in resume method
OLD:
case (throwable @ _) if NonFatal.apply(throwable) => {
{
stateMachine$1.this.result.complete(Failure.apply[Nothing](throwable));
()
};
()
}
NEW:
case (throwable @ _) if NonFatal.apply(throwable) => {
stateMachine$1.this.result.complete(Failure.apply[Nothing](throwable));
()
}
Diffstat (limited to 'src')
-rw-r--r-- | src/main/scala/scala/async/internal/ExprBuilder.scala | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/main/scala/scala/async/internal/ExprBuilder.scala b/src/main/scala/scala/async/internal/ExprBuilder.scala index 2e3a017..117701d 100644 --- a/src/main/scala/scala/async/internal/ExprBuilder.scala +++ b/src/main/scala/scala/async/internal/ExprBuilder.scala @@ -346,12 +346,11 @@ trait ExprBuilder { List( CaseDef( Bind(name.t, Ident(nme.WILDCARD)), - Apply(Ident(defn.NonFatalClass), List(Ident(name.t))), - Block(List({ + Apply(Ident(defn.NonFatalClass), List(Ident(name.t))), { val t = Expr[Throwable](Ident(name.t)) futureSystemOps.completeProm[T]( Expr[futureSystem.Prom[T]](symLookup.memberRef(name.result)), reify(scala.util.Failure(t.splice))).tree - }), literalUnit))), EmptyTree)) + })), EmptyTree)) /** * assumes tr: Try[Any] is in scope. |