DescriptionIntroduce await.
This CL adds basic infrastructure needed for awaitable expressions. Implementation of continuations is not part of this CL.
Expressions containing ``await'' are transformed into a series of operations on intermediates, effectively getting rid
of the temporary expression stack. Currently only expressions evaluating to an actual value (read: non-future) are supported.
Also, not all kinds of statements support awaitable expressions yet.
Missing:
* Capturing all (needed) variables
* Continuations (connecting a preamble with await statements; re-adding the closure to the run queue)
BUG=
R=hausner@google.com
Committed: https://code.google.com/p/dart/source/detail?r=39345
Patch Set 1 : #
Total comments: 3
Patch Set 2 : #
Total comments: 36
Patch Set 3 : adressed first round of comments #Patch Set 4 : make linter happy #Patch Set 5 : minor fix for parsing async closures #Patch Set 6 : rebase + bring up to date #
Total comments: 30
Patch Set 7 : addressed comments #
Total comments: 14
Patch Set 8 : Addressed comments #
Messages
Total messages: 9 (0 generated)
|