blob: defdaa4ffc316bb5e5138d1593be25af7f4176cf [file] [log] [blame]
library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
import "dart:_internal" as _in;
class Class extends core::Object {
field core::int field;
final field core::int finalField;
constructor •(core::int field, core::int finalField) self::Class
: self::Class::field = field, self::Class::finalField = finalField, super core::Object::•()
;
get getter() core::int
return this.{self::Class::finalField}{core::int};
}
static method ifCase(dynamic o) core::int {
core::print("o = ${o}");
{
final synthesized dynamic #0#0 = o;
if(#C1 =={core::num::==}{(core::Object) core::bool} #0#0) {
return 1;
}
}
{
final synthesized dynamic #1#0 = o;
late final synthesized core::Object? #1#2 = #1#0{({f: core::Object?})}.f{core::Object?};
if(#1#0 is{ForNonNullableByDefault} ({f: core::Object?}) && ((let final dynamic #t1 = #1#2 as{ForNonNullableByDefault} core::int in (#1#2 as{ForNonNullableByDefault} core::int).{core::num::>=}(#C2){(core::num) → core::bool}) && (let final dynamic #t2 = #1#2 as{ForNonNullableByDefault} core::int in (#1#2 as{ForNonNullableByDefault} core::int).{core::num::<}(#C3){(core::num) → core::bool}))) {
return 2;
}
}
{
final synthesized dynamic #2#0 = o;
if(#C4 =={core::num::==}{(core::Object) core::bool} #2#0 || #C5 =={core::num::==}{(core::Object) → core::bool} #2#0) {
return 3;
}
}
{
final synthesized dynamic #3#0 = o;
late final synthesized core::Object? #3#2 = #3#0{({g: core::Object?})}.g{core::Object?};
if(#3#0 is{ForNonNullableByDefault} ({g: core::Object?}) && (let final dynamic #t3 = #3#2 as{ForNonNullableByDefault} core::int in #C6 =={core::num::==}{(core::Object) → core::bool} #3#2 as{ForNonNullableByDefault} core::int)) {
return 4;
}
}
{
final synthesized dynamic #4#0 = o;
if(#4#0 is{ForNonNullableByDefault} ({a: core::Object?}) && (let final dynamic #t4 = #4#0{({a: core::Object?})}.a{core::Object?}! in true)) {
return 5;
}
}
{
final synthesized dynamic #5#0 = o;
if(#5#0 is{ForNonNullableByDefault} ({b: core::Object?}) && (!(#5#0{({b: core::Object?})}.b{core::Object?} == null) ?{core::bool} true : false)) {
return 6;
}
}
{
final synthesized dynamic #6#0 = o;
if(#6#0 is{ForNonNullableByDefault} core::List<dynamic> && #6#0{core::List<dynamic>}.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && #C1 =={core::num::==}{(core::Object) → core::bool} #6#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C7 =={core::num::==}{(core::Object) → core::bool} #6#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) {
return 7;
}
}
{
final synthesized dynamic #7#0 = o;
if(#7#0 is{ForNonNullableByDefault} core::List<dynamic> && #7#0{core::List<dynamic>}.{core::List::length}{core::int}.{core::num::>=}(#C7){(core::num) → core::bool} && #C7 =={core::num::==}{(core::Object) → core::bool} #7#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C2 =={core::num::==}{(core::Object) → core::bool} #7#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) {
return 8;
}
}
{
final synthesized dynamic #8#0 = o;
late final synthesized core::int #8#2 = #8#0{core::List<dynamic>}.{core::List::length}{core::int};
if(#8#0 is{ForNonNullableByDefault} core::List<dynamic> && #8#2.{core::num::>=}(#C2){(core::num) → core::bool} && #C2 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C8 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && #C3 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}(#8#2.{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic}) {
return 9;
}
}
{
final synthesized dynamic #9#0 = o;
late final synthesized core::List<dynamic> #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>};
late final synthesized dynamic #9#15 = #9#12.{core::List::[]}(0){(core::int) → dynamic};
late final synthesized dynamic #9#19 = #9#12.{core::List::[]}(1){(core::int) → dynamic};
if(#9#0 is{ForNonNullableByDefault} core::List<dynamic> && #9#0{core::List<dynamic>}.{core::List::length}{core::int}.{core::num::>=}(#C7){(core::num) → core::bool} && #C8 =={core::num::==}{(core::Object) → core::bool} #9#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C3 =={core::num::==}{(core::Object) → core::bool} #9#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && (#9#12.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t5 = #9#15 as{ForNonNullableByDefault} core::int in (#9#15 as{ForNonNullableByDefault} core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t6 = #9#19 as{ForNonNullableByDefault} core::int in (#9#19 as{ForNonNullableByDefault} core::int).{core::num::>}(#C7){(core::num) → core::bool}))) {
return 10;
}
}
{
final synthesized dynamic #10#0 = o;
late final synthesized core::int #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int};
late final synthesized core::List<dynamic> #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, #10#2.{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>};
late final synthesized dynamic #10#16 = #10#12.{core::List::[]}(0){(core::int) → dynamic};
late final synthesized dynamic #10#20 = #10#12.{core::List::[]}(1){(core::int) → dynamic};
if(#10#0 is{ForNonNullableByDefault} core::List<dynamic> && #10#2.{core::num::>=}(#C2){(core::num) → core::bool} && #C3 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C4 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && (#10#12.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t7 = #10#16 as{ForNonNullableByDefault} core::int in (#10#16 as{ForNonNullableByDefault} core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t8 = #10#20 as{ForNonNullableByDefault} core::int in (#10#20 as{ForNonNullableByDefault} core::int).{core::num::>}(#C7){(core::num) → core::bool})) && #C5 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}(#10#2.{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic}) {
return 11;
}
}
{
final synthesized dynamic #11#0 = o;
if(#11#0 is{ForNonNullableByDefault} self::Class && #C1 =={core::num::==}{(core::Object) → core::bool} #11#0{self::Class}.{self::Class::field}{core::int}) {
return 12;
}
}
{
final synthesized dynamic #12#0 = o;
if(#12#0 is{ForNonNullableByDefault} self::Class && #C7 =={core::num::==}{(core::Object) → core::bool} #12#0{self::Class}.{self::Class::finalField}{core::int}) {
return 13;
}
}
{
final synthesized dynamic #13#0 = o;
if(#13#0 is{ForNonNullableByDefault} self::Class && #C2 =={core::num::==}{(core::Object) → core::bool} #13#0{self::Class}.{self::Class::field}{core::int} && #C8 =={core::num::==}{(core::Object) → core::bool} #13#0{self::Class}.{self::Class::getter}{core::int}) {
return 14;
}
}
{
final synthesized dynamic #14#0 = o;
if(#14#0 is{ForNonNullableByDefault} self::Class) {
return 15;
}
}
{
final synthesized dynamic #15#0 = o;
if(#15#0 =={core::Object::==}{(core::Object) → core::bool} #C9) {
return 16;
}
}
{
final synthesized dynamic #16#0 = o;
if(#16#0 is{ForNonNullableByDefault} ({e: core::Object?}) && !(#16#0{({e: core::Object?})}.e{core::Object?} =={core::Object::==}{(core::Object) → core::bool} #C10)) {
return 17;
}
}
{
final synthesized dynamic #17#0 = o;
if(#17#0 is{ForNonNullableByDefault} core::Map<core::int, core::int> && #17#0{core::Map<core::int, core::int>}.{core::Map::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1 && #17#0{core::Map<core::int, core::int>}.{core::Map::containsKey}(#C3){(core::Object?) → core::bool} && (#17#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?} as{ForNonNullableByDefault} core::int).{core::num::>=}(#C11){(core::num) → core::bool}) {
return 18;
}
}
{
final synthesized dynamic #18#0 = o;
if(#18#0 is{ForNonNullableByDefault} core::List<dynamic> && #18#0{core::List<dynamic>}.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1) {
return 19;
}
}
{
final synthesized dynamic #19#0 = o;
if(#19#0 is{ForNonNullableByDefault} core::bool) {
return 20;
}
}
{
final synthesized dynamic #20#0 = o;
if(#20#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #20#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C12) {
return 21;
}
}
{
final synthesized dynamic #21#0 = o;
if(#21#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #21#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1 && #21#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C12){(core::Object?) → core::bool} && #21#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic} is{ForNonNullableByDefault} core::int) {
return 22;
}
}
{
final synthesized dynamic #22#0 = o;
if(#22#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #22#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}.{core::num::>=}(#C1){(core::num) → core::bool} && #22#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C1){(core::Object?) → core::bool} && #22#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic} is{ForNonNullableByDefault} core::String) {
return 23;
}
}
{
dynamic a;
final synthesized dynamic #23#0 = o;
if(#23#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #23#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1 && #23#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C7){(core::Object?) → core::bool} && (let final dynamic #t9 = a = #23#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic} in true)) {
return 24;
}
}
{
core::int b;
final synthesized dynamic #24#0 = o;
late final synthesized dynamic #24#8 = #24#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic};
if(#24#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #24#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1 && #24#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C2){(core::Object?) → core::bool} && (#24#8 is{ForNonNullableByDefault} core::int && (let final dynamic #t10 = b = #24#8{core::int} in true))) {
return 25;
}
}
{
final synthesized dynamic #25#0 = o;
if(#25#0 is{ForNonNullableByDefault} (core::Object?, core::Object?) && #C12 =={core::num::==}{(core::Object) → core::bool} #25#0{(core::Object?, core::Object?)}.$1{core::Object?} && #C1 =={core::num::==}{(core::Object) → core::bool} #25#0{(core::Object?, core::Object?)}.$2{core::Object?}) {
return 26;
}
}
{
dynamic c;
final synthesized dynamic #26#0 = o;
if(#26#0 is{ForNonNullableByDefault} ({a: core::Object?, b: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #26#0{({a: core::Object?, b: core::Object?})}.a{core::Object?} && (let final dynamic #t11 = c = #26#0{({a: core::Object?, b: core::Object?})}.b{core::Object?} in true)) {
return 27;
}
}
{
dynamic d;
final synthesized dynamic #27#0 = o;
if(#27#0 is{ForNonNullableByDefault} ({c: core::Object?, d: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #27#0{({c: core::Object?, d: core::Object?})}.c{core::Object?} && (let final dynamic #t12 = d = #27#0{({c: core::Object?, d: core::Object?})}.d{core::Object?} in true) && d is{ForNonNullableByDefault} core::int) {
return 28;
}
}
return 0;
}
static method ifCaseElse(dynamic o) core::int {
core::print("o = ${o}");
{
final synthesized dynamic #0#0 = o;
if(#C1 =={core::num::==}{(core::Object) core::bool} #0#0) {
return 1;
}
else {
final synthesized dynamic #1#0 = o;
late final synthesized core::Object? #1#2 = #1#0{({f: core::Object?})}.f{core::Object?};
if(#1#0 is{ForNonNullableByDefault} ({f: core::Object?}) && ((let final dynamic #t13 = #1#2 as{ForNonNullableByDefault} core::int in (#1#2 as{ForNonNullableByDefault} core::int).{core::num::>=}(#C2){(core::num) → core::bool}) && (let final dynamic #t14 = #1#2 as{ForNonNullableByDefault} core::int in (#1#2 as{ForNonNullableByDefault} core::int).{core::num::<}(#C3){(core::num) → core::bool}))) {
return 2;
}
else {
final synthesized dynamic #2#0 = o;
if(#C4 =={core::num::==}{(core::Object) core::bool} #2#0 || #C5 =={core::num::==}{(core::Object) → core::bool} #2#0) {
return 3;
}
else {
final synthesized dynamic #3#0 = o;
late final synthesized core::Object? #3#2 = #3#0{({g: core::Object?})}.g{core::Object?};
if(#3#0 is{ForNonNullableByDefault} ({g: core::Object?}) && (let final dynamic #t15 = #3#2 as{ForNonNullableByDefault} core::int in #C6 =={core::num::==}{(core::Object) → core::bool} #3#2 as{ForNonNullableByDefault} core::int)) {
return 4;
}
else {
final synthesized dynamic #4#0 = o;
if(#4#0 is{ForNonNullableByDefault} ({a: core::Object?}) && (let final dynamic #t16 = #4#0{({a: core::Object?})}.a{core::Object?}! in true)) {
return 5;
}
else {
final synthesized dynamic #5#0 = o;
if(#5#0 is{ForNonNullableByDefault} ({b: core::Object?}) && (!(#5#0{({b: core::Object?})}.b{core::Object?} == null) ?{core::bool} true : false)) {
return 6;
}
else {
final synthesized dynamic #6#0 = o;
if(#6#0 is{ForNonNullableByDefault} core::List<dynamic> && #6#0{core::List<dynamic>}.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && #C1 =={core::num::==}{(core::Object) → core::bool} #6#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C7 =={core::num::==}{(core::Object) → core::bool} #6#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) {
return 7;
}
else {
final synthesized dynamic #7#0 = o;
if(#7#0 is{ForNonNullableByDefault} core::List<dynamic> && #7#0{core::List<dynamic>}.{core::List::length}{core::int}.{core::num::>=}(#C7){(core::num) → core::bool} && #C7 =={core::num::==}{(core::Object) → core::bool} #7#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C2 =={core::num::==}{(core::Object) → core::bool} #7#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) {
return 8;
}
else {
final synthesized dynamic #8#0 = o;
late final synthesized core::int #8#2 = #8#0{core::List<dynamic>}.{core::List::length}{core::int};
if(#8#0 is{ForNonNullableByDefault} core::List<dynamic> && #8#2.{core::num::>=}(#C2){(core::num) → core::bool} && #C2 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C8 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && #C3 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}(#8#2.{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic}) {
return 9;
}
else {
final synthesized dynamic #9#0 = o;
late final synthesized core::List<dynamic> #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>};
late final synthesized dynamic #9#15 = #9#12.{core::List::[]}(0){(core::int) → dynamic};
late final synthesized dynamic #9#19 = #9#12.{core::List::[]}(1){(core::int) → dynamic};
if(#9#0 is{ForNonNullableByDefault} core::List<dynamic> && #9#0{core::List<dynamic>}.{core::List::length}{core::int}.{core::num::>=}(#C7){(core::num) → core::bool} && #C8 =={core::num::==}{(core::Object) → core::bool} #9#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C3 =={core::num::==}{(core::Object) → core::bool} #9#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && (#9#12.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t17 = #9#15 as{ForNonNullableByDefault} core::int in (#9#15 as{ForNonNullableByDefault} core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t18 = #9#19 as{ForNonNullableByDefault} core::int in (#9#19 as{ForNonNullableByDefault} core::int).{core::num::>}(#C7){(core::num) → core::bool}))) {
return 10;
}
else {
final synthesized dynamic #10#0 = o;
late final synthesized core::int #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int};
late final synthesized core::List<dynamic> #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, #10#2.{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>};
late final synthesized dynamic #10#16 = #10#12.{core::List::[]}(0){(core::int) → dynamic};
late final synthesized dynamic #10#20 = #10#12.{core::List::[]}(1){(core::int) → dynamic};
if(#10#0 is{ForNonNullableByDefault} core::List<dynamic> && #10#2.{core::num::>=}(#C2){(core::num) → core::bool} && #C3 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C4 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && (#10#12.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t19 = #10#16 as{ForNonNullableByDefault} core::int in (#10#16 as{ForNonNullableByDefault} core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t20 = #10#20 as{ForNonNullableByDefault} core::int in (#10#20 as{ForNonNullableByDefault} core::int).{core::num::>}(#C7){(core::num) → core::bool})) && #C5 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}(#10#2.{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic}) {
return 11;
}
else {
final synthesized dynamic #11#0 = o;
if(#11#0 is{ForNonNullableByDefault} self::Class && #C1 =={core::num::==}{(core::Object) → core::bool} #11#0{self::Class}.{self::Class::field}{core::int}) {
return 12;
}
else {
final synthesized dynamic #12#0 = o;
if(#12#0 is{ForNonNullableByDefault} self::Class && #C7 =={core::num::==}{(core::Object) → core::bool} #12#0{self::Class}.{self::Class::finalField}{core::int}) {
return 13;
}
else {
final synthesized dynamic #13#0 = o;
if(#13#0 is{ForNonNullableByDefault} self::Class && #C2 =={core::num::==}{(core::Object) → core::bool} #13#0{self::Class}.{self::Class::field}{core::int} && #C8 =={core::num::==}{(core::Object) → core::bool} #13#0{self::Class}.{self::Class::getter}{core::int}) {
return 14;
}
else {
final synthesized dynamic #14#0 = o;
if(#14#0 is{ForNonNullableByDefault} self::Class) {
return 15;
}
else {
final synthesized dynamic #15#0 = o;
if(#15#0 =={core::Object::==}{(core::Object) → core::bool} #C9) {
return 16;
}
else {
final synthesized dynamic #16#0 = o;
if(#16#0 is{ForNonNullableByDefault} ({e: core::Object?}) && !(#16#0{({e: core::Object?})}.e{core::Object?} =={core::Object::==}{(core::Object) → core::bool} #C10)) {
return 17;
}
else {
final synthesized dynamic #17#0 = o;
if(#17#0 is{ForNonNullableByDefault} core::Map<core::int, core::int> && #17#0{core::Map<core::int, core::int>}.{core::Map::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1 && #17#0{core::Map<core::int, core::int>}.{core::Map::containsKey}(#C3){(core::Object?) → core::bool} && (#17#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?} as{ForNonNullableByDefault} core::int).{core::num::>=}(#C11){(core::num) → core::bool}) {
return 18;
}
else {
final synthesized dynamic #18#0 = o;
if(#18#0 is{ForNonNullableByDefault} core::List<dynamic> && #18#0{core::List<dynamic>}.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1) {
return 19;
}
else {
final synthesized dynamic #19#0 = o;
if(#19#0 is{ForNonNullableByDefault} core::bool) {
return 20;
}
else {
final synthesized dynamic #20#0 = o;
if(#20#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #20#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C12) {
return 21;
}
else {
final synthesized dynamic #21#0 = o;
if(#21#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #21#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1 && #21#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C12){(core::Object?) → core::bool} && #21#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic} is{ForNonNullableByDefault} core::int) {
return 22;
}
else {
final synthesized dynamic #22#0 = o;
if(#22#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #22#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}.{core::num::>=}(#C1){(core::num) → core::bool} && #22#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C1){(core::Object?) → core::bool} && #22#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic} is{ForNonNullableByDefault} core::String) {
return 23;
}
else {
dynamic a;
final synthesized dynamic #23#0 = o;
if(#23#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #23#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1 && #23#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C7){(core::Object?) → core::bool} && (let final dynamic #t21 = a = #23#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic} in true)) {
return 24;
}
else {
core::int b;
final synthesized dynamic #24#0 = o;
late final synthesized dynamic #24#8 = #24#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic};
if(#24#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #24#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1 && #24#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C2){(core::Object?) → core::bool} && (#24#8 is{ForNonNullableByDefault} core::int && (let final dynamic #t22 = b = #24#8{core::int} in true))) {
return 25;
}
else {
final synthesized dynamic #25#0 = o;
if(#25#0 is{ForNonNullableByDefault} (core::Object?, core::Object?) && #C12 =={core::num::==}{(core::Object) → core::bool} #25#0{(core::Object?, core::Object?)}.$1{core::Object?} && #C1 =={core::num::==}{(core::Object) → core::bool} #25#0{(core::Object?, core::Object?)}.$2{core::Object?}) {
return 26;
}
else {
dynamic c;
final synthesized dynamic #26#0 = o;
if(#26#0 is{ForNonNullableByDefault} ({a: core::Object?, b: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #26#0{({a: core::Object?, b: core::Object?})}.a{core::Object?} && (let final dynamic #t23 = c = #26#0{({a: core::Object?, b: core::Object?})}.b{core::Object?} in true)) {
return 27;
}
else {
dynamic d;
final synthesized dynamic #27#0 = o;
if(#27#0 is{ForNonNullableByDefault} ({c: core::Object?, d: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #27#0{({c: core::Object?, d: core::Object?})}.c{core::Object?} && (let final dynamic #t24 = d = #27#0{({c: core::Object?, d: core::Object?})}.d{core::Object?} in true) && d is{ForNonNullableByDefault} core::int) {
return 28;
}
else {
return 0;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
static method switchStatement(dynamic o) core::int {
core::print("o = ${o}");
#L1:
{
final synthesized dynamic #0#0 = o;
late final synthesized core::Object? #0#4 = #0#0{({f: core::Object?})}.f{core::Object?};
late final synthesized core::Object? #0#15 = #0#0{({g: core::Object?})}.g{core::Object?};
synthesized core::Object? #0#20;
synthesized core::bool #0#20#isSet = false;
synthesized core::Object? #0#23;
synthesized core::bool #0#23#isSet = false;
synthesized core::int #0#26;
synthesized core::bool #0#26#isSet = false;
late final synthesized dynamic #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic};
late final synthesized dynamic #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic};
late final synthesized core::bool #0#34 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t25 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C7){(core::num) → core::bool};
late final synthesized core::bool #0#38 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t26 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C2){(core::num) → core::bool};
late final synthesized dynamic #0#43 = #0#0{core::List<dynamic>}.{core::List::[]}((#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t27 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic};
late final synthesized core::List<dynamic> #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>};
late final synthesized dynamic #0#50 = #0#47.{core::List::[]}(0){(core::int) → dynamic};
late final synthesized dynamic #0#53 = #0#47.{core::List::[]}(1){(core::int) → dynamic};
late final synthesized core::List<dynamic> #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t28 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>};
late final synthesized dynamic #0#61 = #0#58.{core::List::[]}(0){(core::int) → dynamic};
late final synthesized dynamic #0#64 = #0#58.{core::List::[]}(1){(core::int) → dynamic};
late final synthesized core::int #0#69 = #0#0{self::Class}.{self::Class::field}{core::int};
synthesized core::bool #0#83;
synthesized core::bool #0#83#isSet = false;
late final synthesized dynamic #0#104 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic};
{
if(#C1 =={core::num::==}{(core::Object) core::bool} #0#0) {
{
return 1;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} ({f: core::Object?}) && ((let final dynamic #t29 = #0#4 as{ForNonNullableByDefault} core::int in (#0#4 as{ForNonNullableByDefault} core::int).{core::num::>=}(#C2){(core::num) → core::bool}) && (let final dynamic #t30 = #0#4 as{ForNonNullableByDefault} core::int in (#0#4 as{ForNonNullableByDefault} core::int).{core::num::<}(#C3){(core::num) → core::bool}))) {
{
return 2;
}
}
}
{
if(#C4 =={core::num::==}{(core::Object) core::bool} #0#0 || #C5 =={core::num::==}{(core::Object) → core::bool} #0#0) {
{
return 3;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} ({g: core::Object?}) && (let final dynamic #t31 = #0#15 as{ForNonNullableByDefault} core::int in #C6 =={core::num::==}{(core::Object) → core::bool} #0#15 as{ForNonNullableByDefault} core::int)) {
{
return 4;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} ({a: core::Object?}) && (let final dynamic #t32 = (#0#20#isSet ?{core::Object?} #0#20{core::Object?} : let final dynamic #t33 = #0#20#isSet = true in #0#20 = #0#0{({a: core::Object?})}.a{core::Object?})! in true)) {
{
return 5;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} ({b: core::Object?}) && (!((#0#23#isSet ?{core::Object?} #0#23{core::Object?} : let final dynamic #t34 = #0#23#isSet = true in #0#23 = #0#0{({b: core::Object?})}.b{core::Object?}) == null) ?{core::bool} true : false)) {
{
return 6;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t35 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C7 && #C1 =={core::num::==}{(core::Object) → core::bool} #0#30 && #C7 =={core::num::==}{(core::Object) → core::bool} #0#32) {
{
return 7;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && #0#34 && #C7 =={core::num::==}{(core::Object) → core::bool} #0#30 && #C2 =={core::num::==}{(core::Object) → core::bool} #0#32) {
{
return 8;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && #0#38 && #C2 =={core::num::==}{(core::Object) → core::bool} #0#30 && #C8 =={core::num::==}{(core::Object) → core::bool} #0#32 && #C3 =={core::num::==}{(core::Object) → core::bool} #0#43) {
{
return 9;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && #0#34 && #C8 =={core::num::==}{(core::Object) → core::bool} #0#30 && #C3 =={core::num::==}{(core::Object) → core::bool} #0#32 && (#0#47.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t36 = #0#50 as{ForNonNullableByDefault} core::int in (#0#50 as{ForNonNullableByDefault} core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t37 = #0#53 as{ForNonNullableByDefault} core::int in (#0#53 as{ForNonNullableByDefault} core::int).{core::num::>}(#C7){(core::num) → core::bool}))) {
{
return 10;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && #0#38 && #C3 =={core::num::==}{(core::Object) → core::bool} #0#30 && #C4 =={core::num::==}{(core::Object) → core::bool} #0#32 && (#0#58.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t38 = #0#61 as{ForNonNullableByDefault} core::int in (#0#61 as{ForNonNullableByDefault} core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t39 = #0#64 as{ForNonNullableByDefault} core::int in (#0#64 as{ForNonNullableByDefault} core::int).{core::num::>}(#C7){(core::num) → core::bool})) && #C5 =={core::num::==}{(core::Object) → core::bool} #0#43) {
{
return 11;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} self::Class && #C1 =={core::num::==}{(core::Object) → core::bool} #0#69) {
{
return 12;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} self::Class && #C7 =={core::num::==}{(core::Object) → core::bool} #0#0{self::Class}.{self::Class::finalField}{core::int}) {
{
return 13;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} self::Class && #C2 =={core::num::==}{(core::Object) → core::bool} #0#69 && #C8 =={core::num::==}{(core::Object) → core::bool} #0#0{self::Class}.{self::Class::getter}{core::int}) {
{
return 14;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} self::Class) {
{
return 15;
}
}
}
{
if(#0#0 =={core::Object::==}{(core::Object) → core::bool} #C9) {
{
return 16;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} ({e: core::Object?}) && !(#0#0{({e: core::Object?})}.e{core::Object?} =={core::Object::==}{(core::Object) → core::bool} #C10)) {
{
return 17;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::Map<core::int, core::int> && (#0#83#isSet ?{core::bool} #0#83{core::bool} : let final dynamic #t40 = #0#83#isSet = true in #0#83 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t41 = #0#26#isSet = true in #0#26 = #0#0{core::Map<core::int, core::int>}.{core::Map::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1) && #0#0{core::Map<core::int, core::int>}.{core::Map::containsKey}(#C3){(core::Object?) → core::bool} && (#0#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?} as{ForNonNullableByDefault} core::int).{core::num::>=}(#C11){(core::num) → core::bool}) {
{
return 18;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && (#0#83#isSet ?{core::bool} #0#83{core::bool} : let final dynamic #t42 = #0#83#isSet = true in #0#83 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t43 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1)) {
{
return 19;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::bool) {
{
return 20;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t44 = #0#26#isSet = true in #0#26 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C12) {
{
return 21;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && (#0#83#isSet ?{core::bool} #0#83{core::bool} : let final dynamic #t45 = #0#83#isSet = true in #0#83 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t46 = #0#26#isSet = true in #0#26 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1) && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C12){(core::Object?) → core::bool} && #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic} is{ForNonNullableByDefault} core::int) {
{
return 22;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t47 = #0#26#isSet = true in #0#26 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}).{core::num::>=}(#C1){(core::num) → core::bool} && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C1){(core::Object?) → core::bool} && #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic} is{ForNonNullableByDefault} core::String) {
{
return 23;
}
}
}
{
dynamic a;
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && (#0#83#isSet ?{core::bool} #0#83{core::bool} : let final dynamic #t48 = #0#83#isSet = true in #0#83 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t49 = #0#26#isSet = true in #0#26 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1) && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C7){(core::Object?) → core::bool} && (let final dynamic #t50 = a = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic} in true)) {
{
return 24;
}
}
}
{
core::int b;
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && (#0#83#isSet ?{core::bool} #0#83{core::bool} : let final dynamic #t51 = #0#83#isSet = true in #0#83 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t52 = #0#26#isSet = true in #0#26 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1) && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C2){(core::Object?) → core::bool} && (#0#104 is{ForNonNullableByDefault} core::int && (let final dynamic #t53 = b = #0#104{core::int} in true))) {
{
return 25;
}
}
}
{
if(#0#0 is{ForNonNullableByDefault} (core::Object?, core::Object?) && #C12 =={core::num::==}{(core::Object) → core::bool} #0#0{(core::Object?, core::Object?)}.$1{core::Object?} && #C1 =={core::num::==}{(core::Object) → core::bool} #0#0{(core::Object?, core::Object?)}.$2{core::Object?}) {
{
return 26;
}
}
}
{
dynamic c;
if(#0#0 is{ForNonNullableByDefault} ({a: core::Object?, b: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} (#0#20#isSet ?{core::Object?} #0#20{core::Object?} : let final dynamic #t54 = #0#20#isSet = true in #0#20 = #0#0{({a: core::Object?, b: core::Object?})}.a{core::Object?}) && (let final dynamic #t55 = c = #0#23#isSet ?{core::Object?} #0#23{core::Object?} : let final dynamic #t56 = #0#23#isSet = true in #0#23 = #0#0{({a: core::Object?, b: core::Object?})}.b{core::Object?} in true)) {
{
return 27;
}
}
}
{
dynamic d;
if(#0#0 is{ForNonNullableByDefault} ({c: core::Object?, d: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #0#0{({c: core::Object?, d: core::Object?})}.c{core::Object?} && (let final dynamic #t57 = d = #0#0{({c: core::Object?, d: core::Object?})}.d{core::Object?} in true) && d is{ForNonNullableByDefault} core::int) {
{
return 28;
}
}
}
{
{
{
return 0;
}
}
}
}
}
static method switchExpression(dynamic o) core::int {
core::print("o = ${o}");
return block {
core::int #t58;
final synthesized dynamic #0#0 = o;
late final synthesized core::Object? #0#4 = #0#0{({f: core::Object?})}.f{core::Object?};
late final synthesized core::Object? #0#15 = #0#0{({g: core::Object?})}.g{core::Object?};
synthesized core::Object? #0#20;
synthesized core::bool #0#20#isSet = false;
synthesized core::Object? #0#23;
synthesized core::bool #0#23#isSet = false;
synthesized core::int #0#26;
synthesized core::bool #0#26#isSet = false;
late final synthesized dynamic #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic};
late final synthesized dynamic #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic};
late final synthesized core::bool #0#34 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t59 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C7){(core::num) → core::bool};
late final synthesized core::bool #0#38 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t60 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C2){(core::num) → core::bool};
late final synthesized dynamic #0#43 = #0#0{core::List<dynamic>}.{core::List::[]}((#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t61 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic};
late final synthesized core::List<dynamic> #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>};
late final synthesized dynamic #0#50 = #0#47.{core::List::[]}(0){(core::int) → dynamic};
late final synthesized dynamic #0#53 = #0#47.{core::List::[]}(1){(core::int) → dynamic};
late final synthesized core::List<dynamic> #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t62 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>};
late final synthesized dynamic #0#61 = #0#58.{core::List::[]}(0){(core::int) → dynamic};
late final synthesized dynamic #0#64 = #0#58.{core::List::[]}(1){(core::int) → dynamic};
late final synthesized core::int #0#69 = #0#0{self::Class}.{self::Class::field}{core::int};
synthesized core::bool #0#83;
synthesized core::bool #0#83#isSet = false;
late final synthesized dynamic #0#104 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic};
#L2:
{
{
if(#C1 =={core::num::==}{(core::Object) core::bool} #0#0) {
#t58 = 1;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} ({f: core::Object?}) && ((let final dynamic #t63 = #0#4 as{ForNonNullableByDefault} core::int in (#0#4 as{ForNonNullableByDefault} core::int).{core::num::>=}(#C2){(core::num) → core::bool}) && (let final dynamic #t64 = #0#4 as{ForNonNullableByDefault} core::int in (#0#4 as{ForNonNullableByDefault} core::int).{core::num::<}(#C3){(core::num) → core::bool}))) {
#t58 = 2;
break #L2;
}
}
{
if(#C4 =={core::num::==}{(core::Object) core::bool} #0#0 || #C5 =={core::num::==}{(core::Object) → core::bool} #0#0) {
#t58 = 3;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} ({g: core::Object?}) && (let final dynamic #t65 = #0#15 as{ForNonNullableByDefault} core::int in #C6 =={core::num::==}{(core::Object) → core::bool} #0#15 as{ForNonNullableByDefault} core::int)) {
#t58 = 4;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} ({a: core::Object?}) && (let final dynamic #t66 = (#0#20#isSet ?{core::Object?} #0#20{core::Object?} : let final dynamic #t67 = #0#20#isSet = true in #0#20 = #0#0{({a: core::Object?})}.a{core::Object?})! in true)) {
#t58 = 5;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} ({b: core::Object?}) && (!((#0#23#isSet ?{core::Object?} #0#23{core::Object?} : let final dynamic #t68 = #0#23#isSet = true in #0#23 = #0#0{({b: core::Object?})}.b{core::Object?}) == null) ?{core::bool} true : false)) {
#t58 = 6;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t69 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C7 && #C1 =={core::num::==}{(core::Object) → core::bool} #0#30 && #C7 =={core::num::==}{(core::Object) → core::bool} #0#32) {
#t58 = 7;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && #0#34 && #C7 =={core::num::==}{(core::Object) → core::bool} #0#30 && #C2 =={core::num::==}{(core::Object) → core::bool} #0#32) {
#t58 = 8;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && #0#38 && #C2 =={core::num::==}{(core::Object) → core::bool} #0#30 && #C8 =={core::num::==}{(core::Object) → core::bool} #0#32 && #C3 =={core::num::==}{(core::Object) → core::bool} #0#43) {
#t58 = 9;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && #0#34 && #C8 =={core::num::==}{(core::Object) → core::bool} #0#30 && #C3 =={core::num::==}{(core::Object) → core::bool} #0#32 && (#0#47.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t70 = #0#50 as{ForNonNullableByDefault} core::int in (#0#50 as{ForNonNullableByDefault} core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t71 = #0#53 as{ForNonNullableByDefault} core::int in (#0#53 as{ForNonNullableByDefault} core::int).{core::num::>}(#C7){(core::num) → core::bool}))) {
#t58 = 10;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && #0#38 && #C3 =={core::num::==}{(core::Object) → core::bool} #0#30 && #C4 =={core::num::==}{(core::Object) → core::bool} #0#32 && (#0#58.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t72 = #0#61 as{ForNonNullableByDefault} core::int in (#0#61 as{ForNonNullableByDefault} core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t73 = #0#64 as{ForNonNullableByDefault} core::int in (#0#64 as{ForNonNullableByDefault} core::int).{core::num::>}(#C7){(core::num) → core::bool})) && #C5 =={core::num::==}{(core::Object) → core::bool} #0#43) {
#t58 = 11;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} self::Class && #C1 =={core::num::==}{(core::Object) → core::bool} #0#69) {
#t58 = 12;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} self::Class && #C7 =={core::num::==}{(core::Object) → core::bool} #0#0{self::Class}.{self::Class::finalField}{core::int}) {
#t58 = 13;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} self::Class && #C2 =={core::num::==}{(core::Object) → core::bool} #0#69 && #C8 =={core::num::==}{(core::Object) → core::bool} #0#0{self::Class}.{self::Class::getter}{core::int}) {
#t58 = 14;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} self::Class) {
#t58 = 15;
break #L2;
}
}
{
if(#0#0 =={core::Object::==}{(core::Object) → core::bool} #C9) {
#t58 = 16;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} ({e: core::Object?}) && !(#0#0{({e: core::Object?})}.e{core::Object?} =={core::Object::==}{(core::Object) → core::bool} #C10)) {
#t58 = 17;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::Map<core::int, core::int> && (#0#83#isSet ?{core::bool} #0#83{core::bool} : let final dynamic #t74 = #0#83#isSet = true in #0#83 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t75 = #0#26#isSet = true in #0#26 = #0#0{core::Map<core::int, core::int>}.{core::Map::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1) && #0#0{core::Map<core::int, core::int>}.{core::Map::containsKey}(#C3){(core::Object?) → core::bool} && (#0#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?} as{ForNonNullableByDefault} core::int).{core::num::>=}(#C11){(core::num) → core::bool}) {
#t58 = 18;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::List<dynamic> && (#0#83#isSet ?{core::bool} #0#83{core::bool} : let final dynamic #t76 = #0#83#isSet = true in #0#83 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t77 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1)) {
#t58 = 19;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::bool) {
#t58 = 20;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t78 = #0#26#isSet = true in #0#26 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C12) {
#t58 = 21;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && (#0#83#isSet ?{core::bool} #0#83{core::bool} : let final dynamic #t79 = #0#83#isSet = true in #0#83 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t80 = #0#26#isSet = true in #0#26 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1) && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C12){(core::Object?) → core::bool} && #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic} is{ForNonNullableByDefault} core::int) {
#t58 = 22;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t81 = #0#26#isSet = true in #0#26 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}).{core::num::>=}(#C1){(core::num) → core::bool} && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C1){(core::Object?) → core::bool} && #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic} is{ForNonNullableByDefault} core::String) {
#t58 = 23;
break #L2;
}
}
{
dynamic a;
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && (#0#83#isSet ?{core::bool} #0#83{core::bool} : let final dynamic #t82 = #0#83#isSet = true in #0#83 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t83 = #0#26#isSet = true in #0#26 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1) && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C7){(core::Object?) → core::bool} && (let final dynamic #t84 = a = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic} in true)) {
#t58 = 24;
break #L2;
}
}
{
core::int b;
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && (#0#83#isSet ?{core::bool} #0#83{core::bool} : let final dynamic #t85 = #0#83#isSet = true in #0#83 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t86 = #0#26#isSet = true in #0#26 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1) && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C2){(core::Object?) → core::bool} && (#0#104 is{ForNonNullableByDefault} core::int && (let final dynamic #t87 = b = #0#104{core::int} in true))) {
#t58 = 25;
break #L2;
}
}
{
if(#0#0 is{ForNonNullableByDefault} (core::Object?, core::Object?) && #C12 =={core::num::==}{(core::Object) → core::bool} #0#0{(core::Object?, core::Object?)}.$1{core::Object?} && #C1 =={core::num::==}{(core::Object) → core::bool} #0#0{(core::Object?, core::Object?)}.$2{core::Object?}) {
#t58 = 26;
break #L2;
}
}
{
dynamic c;
if(#0#0 is{ForNonNullableByDefault} ({a: core::Object?, b: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} (#0#20#isSet ?{core::Object?} #0#20{core::Object?} : let final dynamic #t88 = #0#20#isSet = true in #0#20 = #0#0{({a: core::Object?, b: core::Object?})}.a{core::Object?}) && (let final dynamic #t89 = c = #0#23#isSet ?{core::Object?} #0#23{core::Object?} : let final dynamic #t90 = #0#23#isSet = true in #0#23 = #0#0{({a: core::Object?, b: core::Object?})}.b{core::Object?} in true)) {
#t58 = 27;
break #L2;
}
}
{
dynamic d;
if(#0#0 is{ForNonNullableByDefault} ({c: core::Object?, d: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #0#0{({c: core::Object?, d: core::Object?})}.c{core::Object?} && (let final dynamic #t91 = d = #0#0{({c: core::Object?, d: core::Object?})}.d{core::Object?} in true) && d is{ForNonNullableByDefault} core::int) {
#t58 = 28;
break #L2;
}
}
{
if(true) {
#t58 = 0;
break #L2;
}
}
throw new _in::ReachabilityError::•("`null` encountered as case in a switch expression with a non-nullable type.");
}
} =>#t58;
}
static method test(dynamic expected, dynamic value) dynamic {
self::expect(expected, self::ifCase(value));
self::expect(expected, self::ifCaseElse(value));
self::expect(expected, self::switchStatement(value));
self::expect(expected, self::switchExpression(value));
}
static method main() dynamic {
self::test(0, 0);
self::test(1, 1);
self::test(2, ({f: 3}));
self::test(2, ({f: 4}));
self::test(3, 6);
self::test(3, 7);
self::test(4, ({g: 8}));
self::test(5, ({a: 1}));
self::test(6, ({b: 2}));
self::test(0, ({b: null}));
self::test(0, <core::int>[1, 3]);
self::test(7, <core::int>[1, 2]);
self::test(8, <core::int>[2, 3]);
self::test(8, <core::int>[2, 3, 4]);
self::test(8, <core::int>[2, 3, 4, 5]);
self::test(9, <core::int>[3, 4, 5]);
self::test(9, <core::int>[3, 4, 6, 5]);
self::test(10, <core::int>[4, 5, 0, 3]);
self::test(11, <core::int>[5, 6, 0, 3, 7]);
self::test(12, new self::Class::•(1, 0));
self::test(12, new self::Class::•(1, 1));
self::test(12, new self::Class::•(1, 2));
self::test(13, new self::Class::•(0, 2));
self::test(13, new self::Class::•(2, 2));
self::test(14, new self::Class::•(3, 4));
self::test(15, new self::Class::•(3, 5));
self::test(15, new self::Class::•(4, 5));
self::test(16, "foo");
self::test(17, ({e: "baz"}));
self::test(0, ({e: "bar"}));
self::test(18, <core::int, core::int>{5: 16});
self::test(18, <core::int, core::int>{5: 17});
self::test(19, <core::bool>[true]);
self::test(19, <core::String>["foo"]);
self::test(20, true);
self::test(20, false);
self::test(21, <dynamic, dynamic>{});
self::test(22, <core::int, core::int>{0: 0});
self::test(22, <core::int, core::int>{0: 1});
self::test(0, <core::int, core::String>{0: "foo"});
self::test(23, <core::int, core::String>{1: "foo"});
self::test(23, <core::int, core::String>{1: "foo", 2: "bar"});
self::test(0, <core::int, core::int>{1: 0});
self::test(24, <core::int, core::String>{2: "foo"});
self::test(24, <core::int, core::int>{2: 0});
self::test(25, <core::int, core::int>{3: 0});
self::test(0, <core::int, core::String>{3: "foo"});
self::test(26, (0, 1));
self::test(27, ({a: 0, b: 1}));
self::test(27, ({a: 0, b: "foo"}));
self::test(28, ({c: 0, d: 1}));
self::test(28, ({c: 0, d: 2}));
self::test(0, ({c: 0, d: "foo"}));
core::print("success");
}
static method expect(dynamic expected, dynamic actual) dynamic {
core::print("${expected} = ${actual} ?");
if(!(expected =={core::Object::==}{(core::Object) core::bool} actual)) {
throw "Expected ${expected}, actual ${actual}";
}
}
constants {
#C1 = 1
#C2 = 3
#C3 = 5
#C4 = 6
#C5 = 7
#C6 = 8
#C7 = 2
#C8 = 4
#C9 = "foo"
#C10 = "bar"
#C11 = 16
#C12 = 0
}