blob: 1a81ded7e4b90c01478e651f3251df0a345eee86 [file] [log] [blame]
library test;
import self as self;
import "dart:async" as asy;
import "dart:core" as core;
static method main() dynamic /* originally async */ {
final asy::Completer<asy::FutureOr<dynamic>> :completer = asy::Completer::sync<asy::FutureOr<dynamic>>();
asy::FutureOr<dynamic> :return_value;
dynamic :async_op_then;
dynamic :async_op_error;
dynamic :await_jump_var = 0;
dynamic :await_ctx_var;
dynamic :saved_try_context_var0;
function :async_op([dynamic :result, dynamic :exception, dynamic :stack_trace]) dynamic yielding
try {
#L1:
{
() asy::Stream<core::Null> f = () asy::Stream<core::Null> /* originally async* */ {
dynamic :controller;
dynamic :async_op_then;
dynamic :async_op_error;
dynamic :await_jump_var = 0;
dynamic :await_ctx_var;
dynamic :saved_try_context_var0;
dynamic :saved_try_context_var1;
function :async_op([dynamic :result, dynamic :exception, dynamic :stack_trace]) dynamic yielding
try
try {
#L2:
{
if(:controller.add(null))
return null;
else
[yield] null;
}
return;
}
on dynamic catch(dynamic :exception, dynamic :stack_trace) {
:controller.addError(:exception, :stack_trace);
}
finally {
:controller.close();
}
:async_op_then = asy::_asyncThenWrapperHelper(:async_op);
:async_op_error = asy::_asyncErrorWrapperHelper(:async_op);
:controller = new asy::_AsyncStarStreamController::•(:async_op);
return :controller.stream;
};
asy::Stream<dynamic> y = f.call();
asy::Stream<core::String> z = f.call();
asy::_awaitHelper(f.call().{asy::Stream::first}, :async_op_then, :async_op_error, :async_op);
[yield] null;
core::String s = :result;
}
:completer.complete(:return_value);
return;
}
on dynamic catch(dynamic :exception, dynamic :stack_trace) {
:completer.completeError(:exception, :stack_trace);
}
:async_op_then = asy::_asyncThenWrapperHelper(:async_op);
:async_op_error = asy::_asyncErrorWrapperHelper(:async_op);
asy::Future::microtask<dynamic>(:async_op);
return :completer.future;
}