blob: 4fa0f8ff35b030806b2e208a3959018cf958dfc5 [file] [log] [blame]
library;
import self as self;
import "dart:core" as core;
import "dart:collection" as col;
static method test1() dynamic {
{
synthesized core::Iterator<core::List<core::int>> :sync-for-iterator = core::_GrowableList::_literal1<core::List<core::int>>(core::_GrowableList::_literal4<core::int>(3, 4, 5, 6)).{core::Iterable::iterator}{core::Iterator<core::List<core::int>>};
for (; :sync-for-iterator.{core::Iterator::moveNext}(){() core::bool}; ) {
final core::List<core::int> #t1 = :sync-for-iterator.{core::Iterator::current}{core::List<core::int>};
{
hoisted core::int a2;
hoisted core::int b2;
hoisted core::List<core::int> c2;
{
final synthesized core::List<core::int> #0#0 = #t1;
synthesized core::int #0#4;
synthesized core::bool #0#4#isSet = false;
synthesized core::List<core::int> #0#6;
synthesized core::bool #0#6#isSet = false;
if(!(#0#0.{core::List::length}{core::int}.{core::num::>=}(#C1){(core::num) → core::bool} && ((#0#4#isSet ?{core::int} #0#4{core::int} : let final core::bool #t2 = #0#4#isSet = true in #0#4 = #0#0.{core::List::[]}(0){(core::int) → core::int}) is core::int && (let final core::int #t3 = a2 = #0#4#isSet ?{core::int} #0#4{core::int} : let final core::bool #t4 = #0#4#isSet = true in #0#4 = #0#0.{core::List::[]}(0){(core::int) → core::int} in true)) && (let final core::int #t5 = b2 = #0#0.{core::List::[]}(1){(core::int) → core::int} in true) && ((#0#6#isSet ?{core::List<core::int>} #0#6{core::List<core::int>} : let final core::bool #t6 = #0#6#isSet = true in #0#6 = #0#0.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<core::int>}) is core::List<core::int> && (let final core::List<core::int> #t7 = c2 = #0#6#isSet ?{core::List<core::int>} #0#6{core::List<core::int>} : let final core::bool #t8 = #0#6#isSet = true in #0#6 = #0#0.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<core::int>} in true))))
throw{for-error-handling} new core::StateError::•("Pattern matching error");
}
return c2.{core::Iterable::first}{core::int}.{core::int::isEven}{core::bool};
}
}
}
}
static method test2() dynamic {
return block {
final core::List<core::bool> #t9 = core::_GrowableList::•<core::bool>(0);
{
synthesized core::Iterator<core::List<core::int>> :sync-for-iterator = core::_GrowableList::_literal1<core::List<core::int>>(core::_GrowableList::_literal4<core::int>(3, 4, 5, 6)).{core::Iterable::iterator}{core::Iterator<core::List<core::int>>};
for (; :sync-for-iterator.{core::Iterator::moveNext}(){() core::bool}; ) {
final core::List<core::int> #t10 = :sync-for-iterator.{core::Iterator::current}{core::List<core::int>};
{
hoisted core::int a2;
hoisted core::int b2;
hoisted core::List<core::int> c2;
{
final synthesized core::List<core::int> #0#0 = #t10;
synthesized core::int #0#4;
synthesized core::bool #0#4#isSet = false;
synthesized core::List<core::int> #0#6;
synthesized core::bool #0#6#isSet = false;
if(!(#0#0.{core::List::length}{core::int}.{core::num::>=}(#C1){(core::num) → core::bool} && ((#0#4#isSet ?{core::int} #0#4{core::int} : let final core::bool #t11 = #0#4#isSet = true in #0#4 = #0#0.{core::List::[]}(0){(core::int) → core::int}) is core::int && (let final core::int #t12 = a2 = #0#4#isSet ?{core::int} #0#4{core::int} : let final core::bool #t13 = #0#4#isSet = true in #0#4 = #0#0.{core::List::[]}(0){(core::int) → core::int} in true)) && (let final core::int #t14 = b2 = #0#0.{core::List::[]}(1){(core::int) → core::int} in true) && ((#0#6#isSet ?{core::List<core::int>} #0#6{core::List<core::int>} : let final core::bool #t15 = #0#6#isSet = true in #0#6 = #0#0.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<core::int>}) is core::List<core::int> && (let final core::List<core::int> #t16 = c2 = #0#6#isSet ?{core::List<core::int>} #0#6{core::List<core::int>} : let final core::bool #t17 = #0#6#isSet = true in #0#6 = #0#0.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<core::int>} in true))))
throw{for-error-handling} new core::StateError::•("Pattern matching error");
}
#t9.{core::List::add}{Invariant}(c2.{core::Iterable::first}{core::int}.{core::int::isEven}{core::bool}){(core::bool) → void};
}
}
}
} =>#t9;
}
static method test3() core::Iterable<core::bool> {
return block {
final core::Set<core::bool> #t18 = new col::_Set::•<core::bool>();
{
synthesized core::Iterator<core::List<core::int>> :sync-for-iterator = core::_GrowableList::_literal1<core::List<core::int>>(core::_GrowableList::_literal4<core::int>(3, 4, 5, 6)).{core::Iterable::iterator}{core::Iterator<core::List<core::int>>};
for (; :sync-for-iterator.{core::Iterator::moveNext}(){() core::bool}; ) {
final core::List<core::int> #t19 = :sync-for-iterator.{core::Iterator::current}{core::List<core::int>};
{
hoisted core::int a2;
hoisted core::int b2;
hoisted core::List<core::int> c2;
{
final synthesized core::List<core::int> #0#0 = #t19;
synthesized core::int #0#4;
synthesized core::bool #0#4#isSet = false;
synthesized core::List<core::int> #0#6;
synthesized core::bool #0#6#isSet = false;
if(!(#0#0.{core::List::length}{core::int}.{core::num::>=}(#C1){(core::num) → core::bool} && ((#0#4#isSet ?{core::int} #0#4{core::int} : let final core::bool #t20 = #0#4#isSet = true in #0#4 = #0#0.{core::List::[]}(0){(core::int) → core::int}) is core::int && (let final core::int #t21 = a2 = #0#4#isSet ?{core::int} #0#4{core::int} : let final core::bool #t22 = #0#4#isSet = true in #0#4 = #0#0.{core::List::[]}(0){(core::int) → core::int} in true)) && (let final core::int #t23 = b2 = #0#0.{core::List::[]}(1){(core::int) → core::int} in true) && ((#0#6#isSet ?{core::List<core::int>} #0#6{core::List<core::int>} : let final core::bool #t24 = #0#6#isSet = true in #0#6 = #0#0.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<core::int>}) is core::List<core::int> && (let final core::List<core::int> #t25 = c2 = #0#6#isSet ?{core::List<core::int>} #0#6{core::List<core::int>} : let final core::bool #t26 = #0#6#isSet = true in #0#6 = #0#0.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<core::int>} in true))))
throw{for-error-handling} new core::StateError::•("Pattern matching error");
}
#t18.{core::Set::add}{Invariant}(c2.{core::Iterable::first}{core::int}.{core::int::isEven}{core::bool}){(core::bool) → core::bool};
}
}
}
} =>#t18;
}
static method test4() dynamic {
return block {
final core::Map<core::int, core::bool> #t27 = <core::int, core::bool>{};
{
synthesized core::Iterator<core::List<core::int>> :sync-for-iterator = core::_GrowableList::_literal1<core::List<core::int>>(core::_GrowableList::_literal4<core::int>(3, 4, 5, 6)).{core::Iterable::iterator}{core::Iterator<core::List<core::int>>};
for (; :sync-for-iterator.{core::Iterator::moveNext}(){() core::bool}; ) {
final core::List<core::int> #t28 = :sync-for-iterator.{core::Iterator::current}{core::List<core::int>};
{
hoisted core::int a2;
hoisted core::int b2;
hoisted core::List<core::int> c2;
{
final synthesized core::List<core::int> #0#0 = #t28;
synthesized core::int #0#4;
synthesized core::bool #0#4#isSet = false;
synthesized core::List<core::int> #0#6;
synthesized core::bool #0#6#isSet = false;
if(!(#0#0.{core::List::length}{core::int}.{core::num::>=}(#C1){(core::num) → core::bool} && ((#0#4#isSet ?{core::int} #0#4{core::int} : let final core::bool #t29 = #0#4#isSet = true in #0#4 = #0#0.{core::List::[]}(0){(core::int) → core::int}) is core::int && (let final core::int #t30 = a2 = #0#4#isSet ?{core::int} #0#4{core::int} : let final core::bool #t31 = #0#4#isSet = true in #0#4 = #0#0.{core::List::[]}(0){(core::int) → core::int} in true)) && (let final core::int #t32 = b2 = #0#0.{core::List::[]}(1){(core::int) → core::int} in true) && ((#0#6#isSet ?{core::List<core::int>} #0#6{core::List<core::int>} : let final core::bool #t33 = #0#6#isSet = true in #0#6 = #0#0.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<core::int>}) is core::List<core::int> && (let final core::List<core::int> #t34 = c2 = #0#6#isSet ?{core::List<core::int>} #0#6{core::List<core::int>} : let final core::bool #t35 = #0#6#isSet = true in #0#6 = #0#0.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<core::int>} in true))))
throw{for-error-handling} new core::StateError::•("Pattern matching error");
}
#t27.{core::Map::[]=}{Invariant}(c2.{core::Iterable::first}{core::int}, c2.{core::Iterable::first}{core::int}.{core::int::isEven}{core::bool}){(core::int, core::bool) → void};
}
}
}
} =>#t27;
}
constants {
#C1 = 2
}