library; import self as self; import "dart:core" as core; import "dart:async" as asy; import "dart:async"; class Node extends core::Object { final field core::List* nested; final field core::String* name; constructor •(core::String* name, [core::List* nested = #C1]) → self::Node* : self::Node::name = name, self::Node::nested = nested, super core::Object::•() {} method toString() → core::String* return "<${this.{self::Node::name}}:[${let final core::List* #t1 = this.{self::Node::nested} in #t1.{core::List::==}(null) ?{core::String*} null : #t1.{core::Iterable::join}(", ")}]>"; method toSimpleString() → dynamic { core::Iterable* tmp = let final core::List* #t2 = this.{self::Node::nested} in #t2.{core::List::==}(null) ?{core::Iterable*} null : #t2.{core::Iterable::map}((self::Node* child) → dynamic => child.{self::Node::toSimpleString}()); return "${this.{self::Node::name}} ${let final core::Iterable* #t3 = tmp in #t3.{core::Object::==}(null) ?{core::String*} null : #t3.{core::Iterable::join}(" ")}".{core::String::trim}(); } abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → void async { core::String* expected = "1 2 3 4 5 6 7 8 9 10"; self::Node* node = new self::Node::•("1", [new self::Node::•("2", []), await asy::Future::value(new self::Node::•("3", [await asy::Future::value(new self::Node::•("4", [new self::Node::•("5", [await asy::Future::value(new self::Node::•("6", [await asy::Future::value(new self::Node::•("7", []))])), await asy::Future::value(new self::Node::•("8", [])), await asy::Future::value(new self::Node::•("9", []))])]))])), await asy::Future::value(new self::Node::•("10", []))]); core::String* actual = node.{self::Node::toSimpleString}() as{TypeError,ForDynamic} core::String*; core::print(actual); if(!actual.{core::String::==}(expected)) { throw "Expected '${expected}' but got '${actual}'"; } } constants { #C1 = null }