Files
sdk/pkg/front_end/testcases/const_functions/const_functions_map.dart.strong.expect
T
Kallen Tu 95229aa779 [cfe] Map [] operator enabled for const functions.
Change-Id: I19b0980fc100b3cd19da1875ec9fb08cdd1de70b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195620
Reviewed-by: Jake Macdonald <jakemac@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Kallen Tu <kallentu@google.com>
2021-04-20 20:19:18 +00:00

47 lines
1.3 KiB
Plaintext

library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
import "package:expect/expect.dart" as exp;
import "package:expect/expect.dart";
static const field core::Object? var1 = #C1;
static const field core::Object? var2 = #C2;
static const field core::Object? var3 = #C3;
static const field core::Map<core::String, core::int> map = #C10;
static const field core::Object? var4 = #C2;
static const field core::Object? var5 = #C6;
static const field core::Object? var6 = #C8;
static const field core::int? var7 = #C2;
static method fn(core::Map<core::Object, core::Object> map, core::Object key) → core::Object? {
return map.{core::Map::[]}(key);
}
static method fn2() → core::int? {
return (#C13).{core::Map::[]}("key");
}
static method main() → void {
exp::Expect::equals(#C1, "val");
exp::Expect::equals(#C2, 2);
exp::Expect::equals(#C3, null);
exp::Expect::equals(#C2, 2);
exp::Expect::equals(#C6, 3);
exp::Expect::equals(#C8, 4);
exp::Expect::equals(#C2, 2);
}
constants {
#C1 = "val"
#C2 = 2
#C3 = null
#C4 = "key1"
#C5 = "key2"
#C6 = 3
#C7 = "key3"
#C8 = 4
#C9 = <dynamic>[#C4, #C2, #C5, #C6, #C7, #C8]
#C10 = core::_ImmutableMap<core::String, core::int> {_kvPairs:#C9}
#C11 = "key"
#C12 = <dynamic>[#C11, #C2]
#C13 = core::_ImmutableMap<core::String, core::int> {_kvPairs:#C12}
}