5d44b804cd
This changes the lowering of switch expressions and pattern switch statements without continue to only use if-then-else Change-Id: I3bcbb634ec3153a117c4bd6692a276c1c26e648d Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/279964 Commit-Queue: Johnni Winther <johnniwinther@google.com> Reviewed-by: Chloe Stefantsova <cstefantsova@google.com>
23 lines
946 B
Plaintext
23 lines
946 B
Plaintext
library /*isNonNullableByDefault*/;
|
|
import self as self;
|
|
import "dart:core" as core;
|
|
|
|
static method test(dynamic x) → dynamic {
|
|
#L1:
|
|
{
|
|
final dynamic #0#0 = x;
|
|
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #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} && #C3 =={core::num::==}{(core::Object) → core::bool} #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic} && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C4){(core::Object?) → core::bool} && #C1 =={core::num::==}{(core::Object) → core::bool} #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C4){(core::Object?) → dynamic}) {
|
|
{
|
|
break #L1;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
constants {
|
|
#C1 = 2
|
|
#C2 = "a"
|
|
#C3 = 1
|
|
#C4 = "b"
|
|
}
|