aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scala/async/FutureSystem.scala
Commit message (Collapse)AuthorAgeFilesLines
* Add BlockingAsync and BlockingFutureSystemtopic/seq-debuggingPhilipp Haller2013-06-251-3/+58
|
* Remove CPS dependency from default async implementationPhilipp Haller2013-04-121-0/+8
| | | | | | - move all CPS-related code to `continuations` sub package - fix CPS-based async implementation - enable testing of CPS-based async implementation
* New fix for #1861: Add fall-back to CPS for all unsupported uses of awaitphaller2012-12-191-1/+4
| | | | | | | This is a re-implementation of a previous fix. It is more modular, since it enables the definition of a CPS-based fall-back as a subclass of `AsyncBase`. Thus, it's possible to define fall-back-enabled subclasses of `AsyncBase` targetting not only Scala Futures.
* Rewrite the state machine to a class, rather than an object.Jason Zaugg2012-11-261-0/+9
| | | | | | | | | | | | To avoid suprises in tree retyping, the instance of this class is immediately upcase to StateMachine[Promise[T], ExecContext]. Allow nested non-case classes. These pop up when we use nested async calls. Only look for duplicate names in the subtrees traversed by AsyncTraverser.
* add missing copyrightJason Zaugg2012-11-241-1/+1
|
* Fix typosphaller2012-11-121-2/+2
|
* Resolve feature warningsphaller2012-11-121-1/+3
|
* Remove unneed ().Jason Zaugg2012-11-091-5/+2
|
* Abstract over the future implementation.Jason Zaugg2012-11-091-0/+138
- Refactor the base macro implementation to be parameterized by a FutureSystem, which is defines the triple of types (Future, Promise, ExecutionContext) and the operations on those types (at the AST level) - Cleanup generation of ASTs, in particular, use reify more widely.