blob: e94bf3595089bd8f88e162361e95a3f1fc47de31 [file] [log] [blame]
library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
static method useAddAll() void {
dynamic dynamicList1 = core::_GrowableList::_literal3<core::int>(0, 1, 2);
dynamic dynamicList2 = core::_GrowableList::_literal3<core::num>(3, 4, 5);
dynamic dynamicList3 = core::_GrowableList::_literal3<core::int?>(6, 7, 8);
core::Iterable<core::int> iterableIntList = core::_GrowableList::_literal3<core::int>(9, 10, 11);
core::List<core::int> intList = core::_GrowableList::_literal3<core::int>(12, 13, 14);
core::List<core::int> list1 = block {
final core::List<core::int> #t1 = core::_GrowableList::•<core::int>(0);
{
core::Iterator<dynamic> :sync-for-iterator = (dynamicList1 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>).{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t2 = :sync-for-iterator.{core::Iterator::current};
{
final core::int #t3 = #t2 as{TypeError,ForNonNullableByDefault} core::int;
#t1.{core::List::add}{Invariant}(#t3);
}
}
}
{
core::Iterator<dynamic> :sync-for-iterator = (dynamicList2 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>).{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t4 = :sync-for-iterator.{core::Iterator::current};
{
final core::int #t5 = #t4 as{TypeError,ForNonNullableByDefault} core::int;
#t1.{core::List::add}{Invariant}(#t5);
}
}
}
{
core::Iterator<dynamic> :sync-for-iterator = (dynamicList3 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>).{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t6 = :sync-for-iterator.{core::Iterator::current};
{
final core::int #t7 = #t6 as{TypeError,ForNonNullableByDefault} core::int;
#t1.{core::List::add}{Invariant}(#t7);
}
}
}
#t1.{core::List::addAll}{Invariant}(iterableIntList);
#t1.{core::List::addAll}{Invariant}(intList);
} =>#t1;
self::expect(core::_GrowableList::generate<core::int>(15, (core::int i) core::int => i), list1);
core::List<core::num> list2 = block {
final core::List<core::num> #t8 = core::_GrowableList::•<core::num>(0);
{
core::Iterator<dynamic> :sync-for-iterator = (dynamicList1 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>).{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t9 = :sync-for-iterator.{core::Iterator::current};
{
final core::num #t10 = #t9 as{TypeError,ForNonNullableByDefault} core::num;
#t8.{core::List::add}{Invariant}(#t10);
}
}
}
{
core::Iterator<dynamic> :sync-for-iterator = (dynamicList2 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>).{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t11 = :sync-for-iterator.{core::Iterator::current};
{
final core::num #t12 = #t11 as{TypeError,ForNonNullableByDefault} core::num;
#t8.{core::List::add}{Invariant}(#t12);
}
}
}
{
core::Iterator<dynamic> :sync-for-iterator = (dynamicList3 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>).{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t13 = :sync-for-iterator.{core::Iterator::current};
{
final core::num #t14 = #t13 as{TypeError,ForNonNullableByDefault} core::num;
#t8.{core::List::add}{Invariant}(#t14);
}
}
}
#t8.{core::List::addAll}{Invariant}(iterableIntList);
#t8.{core::List::addAll}{Invariant}(intList);
} =>#t8;
self::expect(core::_GrowableList::generate<core::num>(15, (core::int i) core::int => i), list2);
}
static method useAddAllNullable() void {
dynamic dynamicList1 = core::_GrowableList::_literal3<core::int>(0, 1, 2);
dynamic dynamicList2 = core::_GrowableList::_literal3<core::num>(3, 4, 5);
dynamic dynamicList3 = core::_GrowableList::_literal3<core::int?>(6, 7, 8);
core::Iterable<core::int>? iterableIntList = true ?{core::List<core::int>?} core::_GrowableList::_literal3<core::int>(9, 10, 11) : null;
core::List<core::int>? intList = true ?{core::List<core::int>?} core::_GrowableList::_literal3<core::int>(12, 13, 14) : null;
core::List<core::int> list1 = block {
final core::List<core::int> #t15 = core::_GrowableList::•<core::int>(0);
final core::Iterable<dynamic>? #t16 = dynamicList1 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>?;
if(!#t16.{core::Object::==}(null)) {
core::Iterator<dynamic> :sync-for-iterator = #t16{core::Iterable<dynamic>}.{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t17 = :sync-for-iterator.{core::Iterator::current};
{
final core::int #t18 = #t17 as{TypeError,ForNonNullableByDefault} core::int;
#t15.{core::List::add}{Invariant}(#t18);
}
}
}
final core::Iterable<dynamic>? #t19 = dynamicList2 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>?;
if(!#t19.{core::Object::==}(null)) {
core::Iterator<dynamic> :sync-for-iterator = #t19{core::Iterable<dynamic>}.{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t20 = :sync-for-iterator.{core::Iterator::current};
{
final core::int #t21 = #t20 as{TypeError,ForNonNullableByDefault} core::int;
#t15.{core::List::add}{Invariant}(#t21);
}
}
}
final core::Iterable<dynamic>? #t22 = dynamicList3 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>?;
if(!#t22.{core::Object::==}(null)) {
core::Iterator<dynamic> :sync-for-iterator = #t22{core::Iterable<dynamic>}.{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t23 = :sync-for-iterator.{core::Iterator::current};
{
final core::int #t24 = #t23 as{TypeError,ForNonNullableByDefault} core::int;
#t15.{core::List::add}{Invariant}(#t24);
}
}
}
final core::Iterable<core::int>? #t25 = iterableIntList;
if(!#t25.{core::Object::==}(null))
#t15.{core::List::addAll}{Invariant}(#t25{core::Iterable<core::int>});
final core::Iterable<core::int>? #t26 = intList;
if(!#t26.{core::Object::==}(null))
#t15.{core::List::addAll}{Invariant}(#t26{core::Iterable<core::int>});
} =>#t15;
self::expect(core::_GrowableList::generate<core::int>(15, (core::int i) core::int => i), list1);
core::List<core::num> list2 = block {
final core::List<core::num> #t27 = core::_GrowableList::•<core::num>(0);
final core::Iterable<dynamic>? #t28 = dynamicList1 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>?;
if(!#t28.{core::Object::==}(null)) {
core::Iterator<dynamic> :sync-for-iterator = #t28{core::Iterable<dynamic>}.{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t29 = :sync-for-iterator.{core::Iterator::current};
{
final core::num #t30 = #t29 as{TypeError,ForNonNullableByDefault} core::num;
#t27.{core::List::add}{Invariant}(#t30);
}
}
}
final core::Iterable<dynamic>? #t31 = dynamicList2 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>?;
if(!#t31.{core::Object::==}(null)) {
core::Iterator<dynamic> :sync-for-iterator = #t31{core::Iterable<dynamic>}.{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t32 = :sync-for-iterator.{core::Iterator::current};
{
final core::num #t33 = #t32 as{TypeError,ForNonNullableByDefault} core::num;
#t27.{core::List::add}{Invariant}(#t33);
}
}
}
final core::Iterable<dynamic>? #t34 = dynamicList3 as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>?;
if(!#t34.{core::Object::==}(null)) {
core::Iterator<dynamic> :sync-for-iterator = #t34{core::Iterable<dynamic>}.{core::Iterable::iterator};
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
final dynamic #t35 = :sync-for-iterator.{core::Iterator::current};
{
final core::num #t36 = #t35 as{TypeError,ForNonNullableByDefault} core::num;
#t27.{core::List::add}{Invariant}(#t36);
}
}
}
final core::Iterable<core::num>? #t37 = iterableIntList;
if(!#t37.{core::Object::==}(null))
#t27.{core::List::addAll}{Invariant}(#t37{core::Iterable<core::num>});
final core::Iterable<core::num>? #t38 = intList;
if(!#t38.{core::Object::==}(null))
#t27.{core::List::addAll}{Invariant}(#t38{core::Iterable<core::num>});
} =>#t27;
self::expect(core::_GrowableList::generate<core::num>(15, (core::int i) core::int => i), list2);
}
static method main() dynamic {
self::useAddAll();
self::useAddAllNullable();
}
static method expect(core::List<dynamic> list1, core::List<dynamic> list2) void {
if(!list1.{core::List::length}.{core::num::==}(list2.{core::List::length})) {
throw "Unexpected length. Expected ${list1.{core::List::length}}, actual ${list2.{core::List::length}}.";
}
for (core::int i = 0; i.{core::num::<}(list1.{core::List::length}); i = i.{core::num::+}(1)) {
if(!list1.{core::List::[]}(i).{core::Object::==}(list2.{core::List::[]}(i))) {
throw "Unexpected element at index ${i}. Expected ${list1.{core::List::[]}(i)}, actual ${list2.{core::List::[]}(i)}.";
}
}
}