OLD | NEW |
1 library test; | 1 library test; |
2 import self as self; | 2 import self as self; |
3 import "dart:async" as asy; | 3 import "dart:async" as asy; |
4 import "dart:core" as core; | 4 import "dart:core" as core; |
5 | 5 |
6 static method main() → dynamic /* originally async */ { | 6 static method main() → dynamic async { |
7 final asy::Completer<asy::FutureOr<dynamic>> :completer = asy::Completer::sync
<asy::FutureOr<dynamic>>(); | 7 () → asy::Future<core::Null> f = () → asy::Future<core::Null> async { |
8 asy::FutureOr<dynamic> :return_value; | 8 return null; |
9 dynamic :async_op_then; | 9 }; |
10 dynamic :async_op_error; | 10 asy::Future<dynamic> y = f.call(); |
11 dynamic :await_jump_var = 0; | 11 asy::Future<core::String> z = f.call(); |
12 dynamic :await_ctx_var; | 12 core::String s = await f.call(); |
13 dynamic :saved_try_context_var0; | |
14 function :async_op([dynamic :result, dynamic :exception, dynamic :stack_trace]
) → dynamic yielding | |
15 try { | |
16 #L1: | |
17 { | |
18 () → asy::Future<core::Null> f = () → asy::Future<core::Null> /* origina
lly async */ { | |
19 final asy::Completer<asy::FutureOr<core::Null>> :completer = asy::Comp
leter::sync<asy::FutureOr<core::Null>>(); | |
20 asy::FutureOr<core::Null> :return_value; | |
21 dynamic :async_op_then; | |
22 dynamic :async_op_error; | |
23 dynamic :await_jump_var = 0; | |
24 dynamic :await_ctx_var; | |
25 function :async_op([dynamic :result, dynamic :exception, dynamic :stac
k_trace]) → dynamic yielding | |
26 try { | |
27 #L2: | |
28 { | |
29 :return_value = null; | |
30 break #L2; | |
31 } | |
32 :completer.complete(:return_value); | |
33 return; | |
34 } | |
35 on dynamic catch(dynamic :exception, dynamic :stack_trace) { | |
36 :completer.completeError(:exception, :stack_trace); | |
37 } | |
38 :async_op_then = asy::_asyncThenWrapperHelper(:async_op); | |
39 :async_op_error = asy::_asyncErrorWrapperHelper(:async_op); | |
40 asy::Future::microtask<dynamic>(:async_op); | |
41 return :completer.future; | |
42 }; | |
43 asy::Future<dynamic> y = f.call(); | |
44 asy::Future<core::String> z = f.call(); | |
45 asy::_awaitHelper(f.call(), :async_op_then, :async_op_error, :async_op); | |
46 [yield] null; | |
47 core::String s = :result; | |
48 } | |
49 :completer.complete(:return_value); | |
50 return; | |
51 } | |
52 on dynamic catch(dynamic :exception, dynamic :stack_trace) { | |
53 :completer.completeError(:exception, :stack_trace); | |
54 } | |
55 :async_op_then = asy::_asyncThenWrapperHelper(:async_op); | |
56 :async_op_error = asy::_asyncErrorWrapperHelper(:async_op); | |
57 asy::Future::microtask<dynamic>(:async_op); | |
58 return :completer.future; | |
59 } | 13 } |
OLD | NEW |