blob: 6e13ec494289a5b6532d098168b7bda1b6448a35 [file] [log] [blame]
library test;
import self as self;
import "dart:core" as core;
import "dart:async" as asy;
import "dart:_internal" as _in;
import "dart:async";
class A extends core::Object {
synthetic constructor •() self::A*
: super core::Object::•()
;
}
class B extends self::A {
synthetic constructor •() self::B*
: super self::A::•()
;
}
class C extends self::A {
synthetic constructor •() self::C*
: super self::A::•()
;
}
static method main() dynamic /* originally async */ {
final asy::_AsyncAwaitCompleter<dynamic>* :async_completer = new asy::_AsyncAwaitCompleter::•<dynamic>();
asy::FutureOr<dynamic>* :return_value;
dynamic :async_stack_trace;
(dynamic) →* dynamic :async_op_then;
(core::Object*, core::StackTrace*) →* dynamic :async_op_error;
core::int* :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::Future<self::B*>* b = asy::Future::value<self::B*>(new self::B::•());
asy::Future<self::C*>* c = asy::Future::value<self::C*>(new self::C::•());
core::List<asy::Future<self::A*>*>* lll = <asy::Future<self::A*>*>[b, c];
[yield] let dynamic #t1 = asy::_awaitHelper(asy::Future::wait<self::A*>(lll), :async_op_then, :async_op_error, :async_op) in null;
core::List<self::A*>* result = _in::unsafeCast<core::List<self::A*>*>(:result);
[yield] let dynamic #t2 = asy::_awaitHelper(asy::Future::wait<self::A*>(<asy::Future<self::A*>*>[b, c]), :async_op_then, :async_op_error, :async_op) in null;
core::List<self::A*>* result2 = _in::unsafeCast<core::List<self::A*>*>(:result);
core::List<self::A*>* list = result;
list = result2;
}
asy::_completeOnAsyncReturn(:async_completer, :return_value);
return;
}
on dynamic catch(dynamic :exception, core::StackTrace* :stack_trace) {
:async_completer.{asy::Completer::completeError}(:exception, :stack_trace);
}
:async_stack_trace = asy::_asyncStackTraceHelper(:async_op);
:async_op_then = asy::_asyncThenWrapperHelper(:async_op);
:async_op_error = asy::_asyncErrorWrapperHelper(:async_op);
:async_completer.{asy::_AsyncAwaitCompleter::start}(:async_op);
return :async_completer.{asy::Completer::future};
}