blob: 57176c1a0d9e56403743eaabc57eb1caf4621af4 [file] [log] [blame]
library /*isNonNullableByDefault*/;
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<self::Node>? nested;
final field core::String name;
constructor •(core::String name, [core::List<self::Node>? nested = #C1]) → self::Node
: self::Node::name = name, self::Node::nested = nested, super core::Object::•() {}
method toString() core::String
return "<${this.{self::Node::name}{core::String}}:[${let final core::List<self::Node>? #t1 = this.{self::Node::nested}{core::List<self::Node>?} in #t1 == null ?{core::String?} null : #t1{core::List<self::Node>}.{core::Iterable::join}(", "){([core::String]) → core::String}}]>";
method toSimpleString() dynamic {
core::Iterable<dynamic>? tmp = let final core::List<self::Node>? #t2 = this.{self::Node::nested}{core::List<self::Node>?} in #t2 == null ?{core::Iterable<dynamic>?} null : #t2{core::List<self::Node>}.{core::Iterable::map}<dynamic>((self::Node child) → dynamic => child.{self::Node::toSimpleString}(){() → dynamic}){((self::Node) → dynamic) → core::Iterable<dynamic>};
return "${this.{self::Node::name}{core::String}} ${let final core::Iterable<dynamic>? #t3 = tmp in #t3 == null ?{core::String?} null : #t3{core::Iterable<dynamic>}.{core::Iterable::join}(" "){([core::String]) → core::String}}".{core::String::trim}(){() core::String};
}
}
static method main() void async /* futureValueType= void */ {
core::String expected = "1 2 3 4 5 6 7 8 9 10";
self::Node node = new self::Node::•("1", <self::Node>[new self::Node::•("2", <self::Node>[]), await asy::Future::value<self::Node>(new self::Node::•("3", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("4", <self::Node>[new self::Node::•("5", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("6", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("7", <self::Node>[]))])), await asy::Future::value<self::Node>(new self::Node::•("8", <self::Node>[])), await asy::Future::value<self::Node>(new self::Node::•("9", <self::Node>[]))])]))])), await asy::Future::value<self::Node>(new self::Node::•("10", <self::Node>[]))]);
core::String actual = node.{self::Node::toSimpleString}(){() dynamic} as{TypeError,ForDynamic,ForNonNullableByDefault} core::String;
core::print(actual);
if(!(actual =={core::String::==}{(core::Object) core::bool} expected)) {
throw "Expected '${expected}' but got '${actual}'";
}
}
constants {
#C1 = null
}