diff options
author | Philipp Haller <hallerp@gmail.com> | 2013-04-26 19:02:14 +0200 |
---|---|---|
committer | Philipp Haller <hallerp@gmail.com> | 2013-04-26 19:02:14 +0200 |
commit | ffab92802c130c7e881440d360e7cef051b7f3d4 (patch) | |
tree | 3758477656778d29f37f0fc2c902c0112a0d9a6e /src/main/scala/scala/async/FutureSystem.scala | |
parent | 2754ff01ebec6b1603f6ecda5f6fc78d974093a4 (diff) | |
download | scala-async-ffab92802c130c7e881440d360e7cef051b7f3d4.tar.gz scala-async-ffab92802c130c7e881440d360e7cef051b7f3d4.tar.bz2 scala-async-ffab92802c130c7e881440d360e7cef051b7f3d4.zip |
Abstract over type of generated state machine
Removes method `TransformUtils.applied`.
Diffstat (limited to 'src/main/scala/scala/async/FutureSystem.scala')
-rw-r--r-- | src/main/scala/scala/async/FutureSystem.scala | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/main/scala/scala/async/FutureSystem.scala b/src/main/scala/scala/async/FutureSystem.scala index 5dc04a7..f20854b 100644 --- a/src/main/scala/scala/async/FutureSystem.scala +++ b/src/main/scala/scala/async/FutureSystem.scala @@ -37,6 +37,7 @@ trait FutureSystem { def promType[A: WeakTypeTag]: Type def resultType[A: WeakTypeTag]: Type + def stateMachineType[A: WeakTypeTag]: Type def execContextType: Type /** Create an empty promise */ @@ -139,6 +140,7 @@ object ScalaConcurrentFutureSystem extends TryBasedFutureSystem { }) def promType[A: WeakTypeTag]: Type = c.weakTypeOf[Promise[A]] + def stateMachineType[A: WeakTypeTag]: Type = c.weakTypeOf[scala.async.StateMachine[Promise[A], ExecutionContext]] def execContextType: Type = c.weakTypeOf[ExecutionContext] def createProm[A: WeakTypeTag]: Expr[Prom[A]] = reify { @@ -188,6 +190,7 @@ object IdentityFutureSystem extends TryBasedFutureSystem { def execContext: Expr[ExecContext] = c.literalUnit def promType[A: WeakTypeTag]: Type = c.weakTypeOf[Prom[A]] + def stateMachineType[A: WeakTypeTag]: Type = c.weakTypeOf[scala.async.StateMachine[Prom[A], ExecContext]] def execContextType: Type = c.weakTypeOf[Unit] def createProm[A: WeakTypeTag]: Expr[Prom[A]] = reify { |