aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scala/async/BlockingAsync.scala
diff options
context:
space:
mode:
authorPhilipp Haller <hallerp@gmail.com>2013-06-25 02:54:40 +0200
committerPhilipp Haller <hallerp@gmail.com>2013-06-25 02:55:26 +0200
commit295904a7aa53a5cfce96c2003d3f15eb36ba40c9 (patch)
tree444fcde60a1c388b2b41bb5a1dff8212602d3d46 /src/main/scala/scala/async/BlockingAsync.scala
parent6f6851c68659eae0d5d04ac9713413a3e592bd90 (diff)
downloadscala-async-295904a7aa53a5cfce96c2003d3f15eb36ba40c9.tar.gz
scala-async-295904a7aa53a5cfce96c2003d3f15eb36ba40c9.tar.bz2
scala-async-295904a7aa53a5cfce96c2003d3f15eb36ba40c9.zip
Add BlockingAsync and BlockingFutureSystemtopic/seq-debugging
Diffstat (limited to 'src/main/scala/scala/async/BlockingAsync.scala')
-rw-r--r--src/main/scala/scala/async/BlockingAsync.scala21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/main/scala/scala/async/BlockingAsync.scala b/src/main/scala/scala/async/BlockingAsync.scala
new file mode 100644
index 0000000..3deeb37
--- /dev/null
+++ b/src/main/scala/scala/async/BlockingAsync.scala
@@ -0,0 +1,21 @@
+/*
+ * Copyright (C) 2012 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.async
+
+import scala.language.experimental.macros
+import scala.reflect.macros.Context
+import scala.reflect.internal.annotations.compileTimeOnly
+
+object BlockingAsync extends AsyncBase {
+
+ import scala.concurrent.Future
+
+ lazy val futureSystem = BlockingFutureSystem
+ type FS = BlockingFutureSystem.type
+
+ def async[T](body: T) = macro asyncImpl[T]
+
+ override def asyncImpl[T: c.WeakTypeTag](c: Context)(body: c.Expr[T]): c.Expr[Future[T]] = super.asyncImpl[T](c)(body)
+}