Files
sdk/pkg/front_end/testcases/patterns/map_pattern_inside_case.dart.weak.modular.expect
T
Johnni Winther 7914382b50 [cfe] Remove length check from map pattern matching
In response to https://github.com/dart-lang/language/pull/2960

TEST=existing expectation tests

Change-Id: I5c0d9070b98074c167dea0a0b9a0d576d4aa33d3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/291825
Reviewed-by: Slava Egorov <vegorov@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Chloe Stefantsova <cstefantsova@google.com>
2023-03-30 11:26:08 +00:00

25 lines
859 B
Plaintext

library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
static method test(dynamic x) → dynamic {
#L1:
{
final synthesized dynamic #0#0 = x;
{
if(#0#0 is{ForNonNullableByDefault} core::Map<dynamic, dynamic> && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C1){(core::Object?) → core::bool} && #C2 =={core::num::==}{(core::Object) → core::bool} #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic} && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C3){(core::Object?) → core::bool} && #C4 =={core::num::==}{(core::Object) → core::bool} #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C3){(core::Object?) → dynamic}) {
{
break #L1;
}
}
}
}
}
constants {
#C1 = "a"
#C2 = 1
#C3 = "b"
#C4 = 2
}