blob: 5fe44fb1719f24dac3e4648a1c6d99283bf6629e [file] [log] [blame]
library;
import self as self;
import "dart:core" as core;
import "dart:collection" as col;
import "dart:_internal" as _in;
static method useAddAll() void {
dynamic dynamicSet1 = block {
final core::Set<core::int*>* #t1 = col::LinkedHashSet::•<core::int*>();
#t1.{core::Set::add}{Invariant}(0){(core::int*) →* core::bool*};
#t1.{core::Set::add}{Invariant}(1){(core::int*) →* core::bool*};
#t1.{core::Set::add}{Invariant}(2){(core::int*) →* core::bool*};
} =>#t1;
dynamic dynamicSet2 = block {
final core::Set<core::num*>* #t2 = col::LinkedHashSet::•<core::num*>();
#t2.{core::Set::add}{Invariant}(3){(core::num*) →* core::bool*};
#t2.{core::Set::add}{Invariant}(4){(core::num*) →* core::bool*};
#t2.{core::Set::add}{Invariant}(5){(core::num*) →* core::bool*};
} =>#t2;
core::Iterable<core::int*>* iterableIntSet = block {
final core::Set<core::int*>* #t3 = col::LinkedHashSet::•<core::int*>();
#t3.{core::Set::add}{Invariant}(6){(core::int*) →* core::bool*};
#t3.{core::Set::add}{Invariant}(7){(core::int*) →* core::bool*};
#t3.{core::Set::add}{Invariant}(8){(core::int*) →* core::bool*};
} =>#t3;
core::Iterable<core::num*>* iterableNumSet1 = block {
final core::Set<core::int*>* #t4 = col::LinkedHashSet::•<core::int*>();
#t4.{core::Set::add}{Invariant}(9){(core::int*) →* core::bool*};
#t4.{core::Set::add}{Invariant}(10){(core::int*) →* core::bool*};
#t4.{core::Set::add}{Invariant}(11){(core::int*) →* core::bool*};
} =>#t4;
core::Iterable<core::num*>* iterableNumSet2 = block {
final core::Set<core::num*>* #t5 = col::LinkedHashSet::•<core::num*>();
#t5.{core::Set::add}{Invariant}(12){(core::num*) →* core::bool*};
#t5.{core::Set::add}{Invariant}(13){(core::num*) →* core::bool*};
#t5.{core::Set::add}{Invariant}(14){(core::num*) →* core::bool*};
} =>#t5;
core::Set<core::int*>* intSet = block {
final core::Set<core::int*>* #t6 = col::LinkedHashSet::•<core::int*>();
#t6.{core::Set::add}{Invariant}(15){(core::int*) →* core::bool*};
#t6.{core::Set::add}{Invariant}(16){(core::int*) →* core::bool*};
#t6.{core::Set::add}{Invariant}(17){(core::int*) →* core::bool*};
} =>#t6;
core::Set<core::num*>* numSet1 = block {
final core::Set<core::int*>* #t7 = col::LinkedHashSet::•<core::int*>();
#t7.{core::Set::add}{Invariant}(18){(core::int*) →* core::bool*};
#t7.{core::Set::add}{Invariant}(19){(core::int*) →* core::bool*};
#t7.{core::Set::add}{Invariant}(20){(core::int*) →* core::bool*};
} =>#t7;
core::Set<core::num*>* numSet2 = block {
final core::Set<core::num*>* #t8 = col::LinkedHashSet::•<core::num*>();
#t8.{core::Set::add}{Invariant}(21){(core::num*) →* core::bool*};
#t8.{core::Set::add}{Invariant}(22){(core::num*) →* core::bool*};
#t8.{core::Set::add}{Invariant}(23){(core::num*) →* core::bool*};
} =>#t8;
core::Set<core::int*>* set1 = block {
final core::Set<core::int*>* #t9 = col::LinkedHashSet::•<core::int*>();
for (final dynamic #t10 in dynamicSet1 as{TypeError,ForDynamic} core::Iterable<dynamic>*) {
final core::int* #t11 = #t10 as{TypeError} core::int*;
#t9.{core::Set::add}{Invariant}(#t11){(core::int*) →* core::bool*};
}
for (final dynamic #t12 in dynamicSet2 as{TypeError,ForDynamic} core::Iterable<dynamic>*) {
final core::int* #t13 = #t12 as{TypeError} core::int*;
#t9.{core::Set::add}{Invariant}(#t13){(core::int*) →* core::bool*};
}
#t9.{core::Set::addAll}{Invariant}(iterableIntSet){(core::Iterable<core::int*>*) →* void};
for (final dynamic #t14 in iterableNumSet1) {
final core::int* #t15 = #t14 as{TypeError} core::int*;
#t9.{core::Set::add}{Invariant}(#t15){(core::int*) →* core::bool*};
}
for (final dynamic #t16 in iterableNumSet2) {
final core::int* #t17 = #t16 as{TypeError} core::int*;
#t9.{core::Set::add}{Invariant}(#t17){(core::int*) →* core::bool*};
}
#t9.{core::Set::addAll}{Invariant}(intSet){(core::Iterable<core::int*>*) →* void};
for (final dynamic #t18 in numSet1) {
final core::int* #t19 = #t18 as{TypeError} core::int*;
#t9.{core::Set::add}{Invariant}(#t19){(core::int*) →* core::bool*};
}
for (final dynamic #t20 in numSet2) {
final core::int* #t21 = #t20 as{TypeError} core::int*;
#t9.{core::Set::add}{Invariant}(#t21){(core::int*) →* core::bool*};
}
} =>#t9;
self::expect(core::List::generate<core::int*>(24, (core::int* i) core::int* => i).{core::Iterable::toSet}(){() →* core::Set<core::int*>*}, set1);
core::Set<core::num*>* set2 = block {
final core::Set<core::num*>* #t22 = col::LinkedHashSet::•<core::num*>();
for (final dynamic #t23 in dynamicSet1 as{TypeError,ForDynamic} core::Iterable<dynamic>*) {
final core::num* #t24 = #t23 as{TypeError} core::num*;
#t22.{core::Set::add}{Invariant}(#t24){(core::num*) →* core::bool*};
}
for (final dynamic #t25 in dynamicSet2 as{TypeError,ForDynamic} core::Iterable<dynamic>*) {
final core::num* #t26 = #t25 as{TypeError} core::num*;
#t22.{core::Set::add}{Invariant}(#t26){(core::num*) →* core::bool*};
}
#t22.{core::Set::addAll}{Invariant}(iterableIntSet){(core::Iterable<core::num*>*) →* void};
#t22.{core::Set::addAll}{Invariant}(iterableNumSet1){(core::Iterable<core::num*>*) →* void};
#t22.{core::Set::addAll}{Invariant}(iterableNumSet2){(core::Iterable<core::num*>*) →* void};
#t22.{core::Set::addAll}{Invariant}(intSet){(core::Iterable<core::num*>*) →* void};
#t22.{core::Set::addAll}{Invariant}(numSet1){(core::Iterable<core::num*>*) →* void};
#t22.{core::Set::addAll}{Invariant}(numSet2){(core::Iterable<core::num*>*) →* void};
} =>#t22;
self::expect(core::List::generate<core::num*>(24, (core::int* i) core::int* => i).{core::Iterable::toSet}(){() →* core::Set<core::num*>*}, set2);
core::Set<core::int*>* set3 = block {
final core::Set<core::int*>* #t27 = col::LinkedHashSet::•<core::int*>();
final core::Iterable<dynamic>* #t28 = dynamicSet1 as{TypeError,ForDynamic} core::Iterable<dynamic>*;
if(!(#t28 == null))
for (final dynamic #t29 in #t28) {
final core::int* #t30 = #t29 as{TypeError} core::int*;
#t27.{core::Set::add}{Invariant}(#t30){(core::int*) →* core::bool*};
}
final core::Iterable<dynamic>* #t31 = dynamicSet2 as{TypeError,ForDynamic} core::Iterable<dynamic>*;
if(!(#t31 == null))
for (final dynamic #t32 in #t31) {
final core::int* #t33 = #t32 as{TypeError} core::int*;
#t27.{core::Set::add}{Invariant}(#t33){(core::int*) →* core::bool*};
}
final core::Iterable<core::int*>* #t34 = iterableIntSet;
if(!(#t34 == null))
#t27.{core::Set::addAll}{Invariant}(#t34){(core::Iterable<core::int*>*) →* void};
final core::Iterable<dynamic>* #t35 = iterableNumSet1;
if(!(#t35 == null))
for (final dynamic #t36 in #t35) {
final core::int* #t37 = #t36 as{TypeError} core::int*;
#t27.{core::Set::add}{Invariant}(#t37){(core::int*) →* core::bool*};
}
final core::Iterable<dynamic>* #t38 = iterableNumSet2;
if(!(#t38 == null))
for (final dynamic #t39 in #t38) {
final core::int* #t40 = #t39 as{TypeError} core::int*;
#t27.{core::Set::add}{Invariant}(#t40){(core::int*) →* core::bool*};
}
final core::Iterable<core::int*>* #t41 = intSet;
if(!(#t41 == null))
#t27.{core::Set::addAll}{Invariant}(#t41){(core::Iterable<core::int*>*) →* void};
final core::Iterable<dynamic>* #t42 = numSet1;
if(!(#t42 == null))
for (final dynamic #t43 in #t42) {
final core::int* #t44 = #t43 as{TypeError} core::int*;
#t27.{core::Set::add}{Invariant}(#t44){(core::int*) →* core::bool*};
}
final core::Iterable<dynamic>* #t45 = numSet2;
if(!(#t45 == null))
for (final dynamic #t46 in #t45) {
final core::int* #t47 = #t46 as{TypeError} core::int*;
#t27.{core::Set::add}{Invariant}(#t47){(core::int*) →* core::bool*};
}
} =>#t27;
self::expect(core::List::generate<core::int*>(24, (core::int* i) core::int* => i).{core::Iterable::toSet}(){() →* core::Set<core::int*>*}, set3);
core::Set<core::num*>* set4 = block {
final core::Set<core::num*>* #t48 = col::LinkedHashSet::•<core::num*>();
final core::Iterable<dynamic>* #t49 = dynamicSet1 as{TypeError,ForDynamic} core::Iterable<dynamic>*;
if(!(#t49 == null))
for (final dynamic #t50 in #t49) {
final core::num* #t51 = #t50 as{TypeError} core::num*;
#t48.{core::Set::add}{Invariant}(#t51){(core::num*) →* core::bool*};
}
final core::Iterable<dynamic>* #t52 = dynamicSet2 as{TypeError,ForDynamic} core::Iterable<dynamic>*;
if(!(#t52 == null))
for (final dynamic #t53 in #t52) {
final core::num* #t54 = #t53 as{TypeError} core::num*;
#t48.{core::Set::add}{Invariant}(#t54){(core::num*) →* core::bool*};
}
final core::Iterable<core::num*>* #t55 = iterableIntSet;
if(!(#t55 == null))
#t48.{core::Set::addAll}{Invariant}(#t55){(core::Iterable<core::num*>*) →* void};
final core::Iterable<core::num*>* #t56 = iterableNumSet1;
if(!(#t56 == null))
#t48.{core::Set::addAll}{Invariant}(#t56){(core::Iterable<core::num*>*) →* void};
final core::Iterable<core::num*>* #t57 = iterableNumSet2;
if(!(#t57 == null))
#t48.{core::Set::addAll}{Invariant}(#t57){(core::Iterable<core::num*>*) →* void};
final core::Iterable<core::num*>* #t58 = intSet;
if(!(#t58 == null))
#t48.{core::Set::addAll}{Invariant}(#t58){(core::Iterable<core::num*>*) →* void};
final core::Iterable<core::num*>* #t59 = numSet1;
if(!(#t59 == null))
#t48.{core::Set::addAll}{Invariant}(#t59){(core::Iterable<core::num*>*) →* void};
final core::Iterable<core::num*>* #t60 = numSet2;
if(!(#t60 == null))
#t48.{core::Set::addAll}{Invariant}(#t60){(core::Iterable<core::num*>*) →* void};
} =>#t48;
self::expect(core::List::generate<core::num*>(24, (core::int* i) core::int* => i).{core::Iterable::toSet}(){() →* core::Set<core::num*>*}, set4);
}
static method main() dynamic {
self::useAddAll();
}
static method expect(core::Set<dynamic>* set1, core::Set<dynamic>* set2) void {
if(!(set1.{_in::EfficientLengthIterable::length}{core::int*} =={core::num::==}{(core::Object*) →* core::bool*} set2.{_in::EfficientLengthIterable::length}{core::int*})) {
throw "Unexpected length. Expected ${set1.{_in::EfficientLengthIterable::length}{core::int*}}, actual ${set2.{_in::EfficientLengthIterable::length}{core::int*}}.";
}
for (dynamic element in set1) {
if(!set2.{core::Set::contains}(element){(core::Object*) →* core::bool*}) {
throw "Element ${element} not found. Expected ${set1}, actual ${set2}.";
}
}
}