OLD | NEW |
(Empty) | |
| 1 library test; |
| 2 import self as self; |
| 3 import "dart:async" as asy; |
| 4 import "dart:core" as core; |
| 5 import "dart:math" as math; |
| 6 |
| 7 static method main() → dynamic { |
| 8 () → asy::Future<core::num> f = () → asy::Future<core::num> /* originally asyn
c */ { |
| 9 final asy::Completer<asy::FutureOr<core::num>> :completer = asy::Completer::
sync<asy::FutureOr<core::num>>(); |
| 10 asy::FutureOr<core::num> :return_value; |
| 11 dynamic :async_op_then; |
| 12 dynamic :async_op_error; |
| 13 dynamic :await_jump_var = 0; |
| 14 dynamic :await_ctx_var; |
| 15 function :async_op([dynamic :result, dynamic :exception, dynamic :stack_trac
e]) → dynamic yielding |
| 16 try { |
| 17 #L1: |
| 18 { |
| 19 if(math::Random::•().{math::Random::nextBool}()) { |
| 20 :return_value = 1; |
| 21 break #L1; |
| 22 } |
| 23 else { |
| 24 :return_value = 2.0; |
| 25 break #L1; |
| 26 } |
| 27 } |
| 28 :completer.complete(:return_value); |
| 29 return; |
| 30 } |
| 31 on dynamic catch(dynamic :exception, dynamic :stack_trace) { |
| 32 :completer.completeError(:exception, :stack_trace); |
| 33 } |
| 34 :async_op_then = asy::_asyncThenWrapperHelper(:async_op); |
| 35 :async_op_error = asy::_asyncErrorWrapperHelper(:async_op); |
| 36 asy::Future::microtask<dynamic>(:async_op); |
| 37 return :completer.future; |
| 38 }; |
| 39 asy::Future<core::num> g = f.call(); |
| 40 asy::Future<core::int> h = f.call(); |
| 41 } |
OLD | NEW |