| library /*isNonNullableByDefault*/; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:23:51: Error: Unexpected type 'int' of a spread. Expected 'dynamic' or an Iterable. |
| // const List<String> barWithIntSpread = [...foo, ...fortyTwo]; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:25:51: Error: Unexpected type 'Map<String, String>' of a spread. Expected 'dynamic' or an Iterable. |
| // - 'Map' is from 'dart:core'. |
| // const List<String> barWithMapSpread = [...foo, ...quux]; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:41:50: Error: Unexpected type 'int' of a map spread entry. Expected 'dynamic' or a Map. |
| // const Set<String> quxWithIntSpread = {...baz, ...fortyTwo}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:42:38: Error: Both Iterable and Map spread elements encountered in ambiguous literal. |
| // const Set<String> quxWithMapSpread = {...baz, ...quux}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:48:59: Error: A value of type 'CustomIterable' can't be assigned to a variable of type 'String'. |
| // - 'CustomIterable' is from 'pkg/front_end/testcases/general/constants/const_collections.dart'. |
| // const Set<String> quxWithCustomIterableSpread3 = {...baz, customIterable}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:58:60: Error: Unexpected type 'int' of a map spread entry. Expected 'dynamic' or a Map. |
| // const Map<String, String> quuzWithIntSpread = {...quux, ...fortyTwo}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:59:47: Error: Both Iterable and Map spread elements encountered in ambiguous literal. |
| // const Map<String, String> quuzWithSetSpread = {...quux, ...baz}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:60:46: Error: Both Iterable and Map spread elements encountered in ambiguous literal. |
| // const Map<String, String> mapWithSetSpread = {...baz}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:24:46: Error: Constant evaluation error: |
| // const List<String> barWithIntDynamicSpread = [...foo, ...fortyTwoAsDynamic]; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:24:58: Context: Expected constant '42' to be of type 'Iterable<dynamic>', but was of type 'int'. |
| // - 'Iterable' is from 'dart:core'. |
| // const List<String> barWithIntDynamicSpread = [...foo, ...fortyTwoAsDynamic]; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:24:20: Context: While analyzing: |
| // const List<String> barWithIntDynamicSpread = [...foo, ...fortyTwoAsDynamic]; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:26:51: Error: Constant evaluation error: |
| // const List<String> barWithCustomIterableSpread1 = [ |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:28:12: Context: Only lists and sets can be used in spreads in constant lists and sets. |
| // ...const CustomIterable() |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:26:20: Context: While analyzing: |
| // const List<String> barWithCustomIterableSpread1 = [ |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:30:51: Error: Constant evaluation error: |
| // const List<String> barWithCustomIterableSpread2 = [...bar, ...CustomIterable()]; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:30:63: Context: Only lists and sets can be used in spreads in constant lists and sets. |
| // const List<String> barWithCustomIterableSpread2 = [...bar, ...CustomIterable()]; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:30:20: Context: While analyzing: |
| // const List<String> barWithCustomIterableSpread2 = [...bar, ...CustomIterable()]; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:32:51: Error: Constant evaluation error: |
| // const List<String> barWithCustomIterableSpread3 = [...bar, ...customIterable]; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:32:63: Context: Only lists and sets can be used in spreads in constant lists and sets. |
| // const List<String> barWithCustomIterableSpread3 = [...bar, ...customIterable]; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:32:20: Context: While analyzing: |
| // const List<String> barWithCustomIterableSpread3 = [...bar, ...customIterable]; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:33:43: Error: Constant evaluation error: |
| // const List<String> listConcat = ["Hello"] + ["World"]; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:33:43: Context: The method '+' can't be invoked on '<String>["Hello"]' in a constant expression. |
| // const List<String> listConcat = ["Hello"] + ["World"]; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:33:20: Context: While analyzing: |
| // const List<String> listConcat = ["Hello"] + ["World"]; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:43:50: Error: Constant evaluation error: |
| // const Set<String> quxWithCustomIterableSpread1 = { |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:45:12: Context: Only lists and sets can be used in spreads in constant lists and sets. |
| // ...const CustomIterable() |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:43:19: Context: While analyzing: |
| // const Set<String> quxWithCustomIterableSpread1 = { |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:47:50: Error: Constant evaluation error: |
| // const Set<String> quxWithCustomIterableSpread2 = {...baz, ...CustomIterable()}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:47:62: Context: Only lists and sets can be used in spreads in constant lists and sets. |
| // const Set<String> quxWithCustomIterableSpread2 = {...baz, ...CustomIterable()}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:47:19: Context: While analyzing: |
| // const Set<String> quxWithCustomIterableSpread2 = {...baz, ...CustomIterable()}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:49:48: Error: Constant evaluation error: |
| // const Set<dynamic> setWithNonPrimitiveEquals = {const WithEquals(42)}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:49:55: Context: The element 'WithEquals {i: 42}' does not have a primitive operator '=='. |
| // - 'WithEquals' is from 'pkg/front_end/testcases/general/constants/const_collections.dart'. |
| // const Set<dynamic> setWithNonPrimitiveEquals = {const WithEquals(42)}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:49:20: Context: While analyzing: |
| // const Set<dynamic> setWithNonPrimitiveEquals = {const WithEquals(42)}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:50:40: Error: Constant evaluation error: |
| // const Set<dynamic> setWithDuplicates = {42, 42}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:50:45: Context: The element '42' conflicts with another existing element in the set. |
| // const Set<dynamic> setWithDuplicates = {42, 42}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:50:20: Context: While analyzing: |
| // const Set<dynamic> setWithDuplicates = {42, 42}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:61:27: Error: Constant evaluation error: |
| // const Map<String, String> mapWithCustomMap1 = {...const CustomMap()}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:61:57: Context: Only maps can be used in spreads in constant maps. |
| // const Map<String, String> mapWithCustomMap1 = {...const CustomMap()}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:61:27: Context: While analyzing: |
| // const Map<String, String> mapWithCustomMap1 = {...const CustomMap()}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:62:27: Error: Constant evaluation error: |
| // const Map<String, String> mapWithCustomMap2 = {...CustomMap()}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:62:51: Context: Only maps can be used in spreads in constant maps. |
| // const Map<String, String> mapWithCustomMap2 = {...CustomMap()}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:62:27: Context: While analyzing: |
| // const Map<String, String> mapWithCustomMap2 = {...CustomMap()}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:64:27: Error: Constant evaluation error: |
| // const Map<String, String> mapWithCustomMap3 = {...customMap}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:64:51: Context: Only maps can be used in spreads in constant maps. |
| // const Map<String, String> mapWithCustomMap3 = {...customMap}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:64:27: Context: While analyzing: |
| // const Map<String, String> mapWithCustomMap3 = {...customMap}; |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:65:56: Error: Constant evaluation error: |
| // const Map<dynamic, int> mapWithNonPrimitiveEqualsKey = { |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:66:9: Context: The key 'WithEquals {i: 42}' does not have a primitive operator '=='. |
| // - 'WithEquals' is from 'pkg/front_end/testcases/general/constants/const_collections.dart'. |
| // const WithEquals(42): 42 |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:65:25: Context: While analyzing: |
| // const Map<dynamic, int> mapWithNonPrimitiveEqualsKey = { |
| // ^ |
| // |
| // pkg/front_end/testcases/general/constants/const_collections.dart:68:41: Error: Constant evaluation error: |
| // const Map<int, int> mapWithDuplicates = {42: 42, 42: 42}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:68:50: Context: The key '42' conflicts with another existing key in the map. |
| // const Map<int, int> mapWithDuplicates = {42: 42, 42: 42}; |
| // ^ |
| // pkg/front_end/testcases/general/constants/const_collections.dart:68:21: Context: While analyzing: |
| // const Map<int, int> mapWithDuplicates = {42: 42, 42: 42}; |
| // ^ |
| // |
| import self as self; |
| import "dart:collection" as col; |
| import "dart:core" as core; |
| |
| import "dart:collection"; |
| |
| class ConstIterable extends col::IterableBase<core::int> /*hasConstConstructor*/ { |
| const constructor •() → self::ConstIterable |
| : super col::IterableBase::•() |
| ; |
| get iterator() → core::Iterator<core::int> |
| return <core::int>[].{core::Iterable::iterator}{core::Iterator<core::int>}; |
| } |
| class WithEquals extends core::Object /*hasConstConstructor*/ { |
| final field core::int i; |
| const constructor •(core::int i) → self::WithEquals |
| : self::WithEquals::i = i, super core::Object::•() |
| ; |
| operator ==(core::Object o) → core::bool { |
| return o is{ForNonNullableByDefault} self::WithEquals && (o{self::WithEquals} as{ForNonNullableByDefault} self::WithEquals).{self::WithEquals::i}{core::int} =={core::num::==}{(core::Object) → core::bool} this.{self::WithEquals::i}{core::int}; |
| } |
| } |
| class CustomIterable extends col::IterableBase<core::String> /*hasConstConstructor*/ { |
| const constructor •() → self::CustomIterable |
| : super col::IterableBase::•() |
| ; |
| get iterator() → core::Iterator<core::String> |
| return <core::String>[].{core::Iterable::iterator}{core::Iterator<core::String>}; |
| } |
| class CustomMap extends core::Object implements core::Map<core::String, core::String> /*hasConstConstructor*/ { |
| const constructor •() → self::CustomMap |
| : super core::Object::•() |
| ; |
| @#C1 |
| get entries() → core::Iterable<core::MapEntry<core::String, core::String>> |
| return <core::MapEntry<core::String, core::String>>[]; |
| @#C1 |
| operator [](core::Object? key) → core::String |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| operator []=(covariant-by-class core::String key, covariant-by-class core::String value) → void |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method cast<RK extends core::Object? = dynamic, RV extends core::Object? = dynamic>() → core::Map<self::CustomMap::cast::RK%, self::CustomMap::cast::RV%> |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method clear() → void |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method containsKey(core::Object? key) → core::bool |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method containsValue(core::Object? value) → core::bool |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| get isEmpty() → core::bool |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| get isNotEmpty() → core::bool |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| get keys() → core::Iterable<core::String> |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| get length() → core::int |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method remove(core::Object? key) → core::String |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| get values() → core::Iterable<core::String> |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method addAll(covariant-by-class core::Map<core::String, core::String> other) → void |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method addEntries(covariant-by-class core::Iterable<core::MapEntry<core::String, core::String>> newEntries) → void |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method forEach((core::String, core::String) → void f) → void |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method putIfAbsent(covariant-by-class core::String key, covariant-by-class () → core::String ifAbsent) → core::String |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method updateAll(covariant-by-class (core::String, core::String) → core::String update) → void |
| return throw new core::UnimplementedError::•(); |
| @#C1 |
| method removeWhere((core::String, core::String) → core::bool predicate) → void |
| return throw new core::UnimplementedError::•(); |
| method update(covariant-by-class core::String key, covariant-by-class (core::String) → core::String update, {covariant-by-class () →? core::String ifAbsent = #C2}) → core::String |
| return throw new core::UnimplementedError::•(); |
| method map<K2 extends core::Object? = dynamic, V2 extends core::Object? = dynamic>((core::String, core::String) → core::MapEntry<self::CustomMap::map::K2%, self::CustomMap::map::V2%> f) → core::Map<self::CustomMap::map::K2%, self::CustomMap::map::V2%> |
| return throw new core::UnimplementedError::•(); |
| } |
| static const field core::int fortyTwo = #C3; |
| static const field dynamic fortyTwoAsDynamic = #C3; |
| static const field core::List<core::String>? nullList = #C2; |
| static const field core::List<core::String> foo = #C6; |
| static const field core::List<core::String> bar = #C8; |
| static field core::List<core::String> barAsVar = block { |
| final core::List<core::String> #t1 = core::List::of<core::String>(#C6); |
| #t1.{core::List::add}{Invariant}("!"){(core::String) → void}; |
| } =>#t1; |
| static const field core::List<core::String> barWithNullSpread = #C6; |
| static const field core::List<core::String> barWithIntSpread = invalid-expression "pkg/front_end/testcases/general/constants/const_collections.dart:23:51: Error: Unexpected type 'int' of a spread. Expected 'dynamic' or an Iterable. |
| const List<String> barWithIntSpread = [...foo, ...fortyTwo]; |
| ^"; |
| static const field core::List<core::String> barWithIntDynamicSpread = invalid-expression "Expected constant '42' to be of type 'Iterable<dynamic>', but was of type 'int'. |
| - 'Iterable' is from 'dart:core'."; |
| static const field core::List<core::String> barWithMapSpread = invalid-expression "pkg/front_end/testcases/general/constants/const_collections.dart:25:51: Error: Unexpected type 'Map<String, String>' of a spread. Expected 'dynamic' or an Iterable. |
| - 'Map' is from 'dart:core'. |
| const List<String> barWithMapSpread = [...foo, ...quux]; |
| ^"; |
| static const field core::List<core::String> barWithCustomIterableSpread1 = invalid-expression "Only lists and sets can be used in spreads in constant lists and sets."; |
| static const field core::List<core::String> barWithCustomIterableSpread2 = invalid-expression "Only lists and sets can be used in spreads in constant lists and sets."; |
| static const field self::CustomIterable customIterable = #C9; |
| static const field core::List<core::String> barWithCustomIterableSpread3 = invalid-expression "Only lists and sets can be used in spreads in constant lists and sets."; |
| static const field core::List<core::String> listConcat = invalid-expression "The method '+' can't be invoked on '<String>[\"Hello\"]' in a constant expression."; |
| static const field core::Set<core::String>? nullSet = #C2; |
| static const field core::Set<core::String> baz = #C10; |
| static const field core::Set<core::String> qux = #C11; |
| static const field core::Set<core::String> quxWithNullSpread = #C10; |
| static const field core::Set<core::String> quxWithIntSpread = invalid-expression "pkg/front_end/testcases/general/constants/const_collections.dart:41:50: Error: Unexpected type 'int' of a map spread entry. Expected 'dynamic' or a Map. |
| const Set<String> quxWithIntSpread = {...baz, ...fortyTwo}; |
| ^"; |
| static const field core::Set<core::String> quxWithMapSpread = invalid-expression "pkg/front_end/testcases/general/constants/const_collections.dart:42:38: Error: Both Iterable and Map spread elements encountered in ambiguous literal. |
| const Set<String> quxWithMapSpread = {...baz, ...quux}; |
| ^"; |
| static const field core::Set<core::String> quxWithCustomIterableSpread1 = invalid-expression "Only lists and sets can be used in spreads in constant lists and sets."; |
| static const field core::Set<core::String> quxWithCustomIterableSpread2 = invalid-expression "Only lists and sets can be used in spreads in constant lists and sets."; |
| static const field core::Set<core::String> quxWithCustomIterableSpread3 = invalid-expression "pkg/front_end/testcases/general/constants/const_collections.dart:48:59: Error: A value of type 'CustomIterable' can't be assigned to a variable of type 'String'. |
| - 'CustomIterable' is from 'pkg/front_end/testcases/general/constants/const_collections.dart'. |
| const Set<String> quxWithCustomIterableSpread3 = {...baz, customIterable}; |
| ^"; |
| static const field core::Set<dynamic> setWithNonPrimitiveEquals = invalid-expression "The element 'WithEquals {i: 42}' does not have a primitive operator '=='. |
| - 'WithEquals' is from 'pkg/front_end/testcases/general/constants/const_collections.dart'."; |
| static const field core::Set<dynamic> setWithDuplicates = invalid-expression "The element '42' conflicts with another existing element in the set."; |
| static const field core::Map<core::String, core::String>? nullMap = #C2; |
| static const field core::Map<core::String, core::String> quux = #C12; |
| static const field core::Map<core::String, core::String> quuz = #C14; |
| static const field core::Map<core::String, core::String> quuzWithNullSpread = #C12; |
| static const field core::Map<core::String, core::String> quuzWithIntSpread = invalid-expression "pkg/front_end/testcases/general/constants/const_collections.dart:58:60: Error: Unexpected type 'int' of a map spread entry. Expected 'dynamic' or a Map. |
| const Map<String, String> quuzWithIntSpread = {...quux, ...fortyTwo}; |
| ^"; |
| static const field core::Map<core::String, core::String> quuzWithSetSpread = invalid-expression "pkg/front_end/testcases/general/constants/const_collections.dart:59:47: Error: Both Iterable and Map spread elements encountered in ambiguous literal. |
| const Map<String, String> quuzWithSetSpread = {...quux, ...baz}; |
| ^"; |
| static const field core::Map<core::String, core::String> mapWithSetSpread = invalid-expression "pkg/front_end/testcases/general/constants/const_collections.dart:60:46: Error: Both Iterable and Map spread elements encountered in ambiguous literal. |
| const Map<String, String> mapWithSetSpread = {...baz}; |
| ^"; |
| static const field core::Map<core::String, core::String> mapWithCustomMap1 = invalid-expression "Only maps can be used in spreads in constant maps."; |
| static const field core::Map<core::String, core::String> mapWithCustomMap2 = invalid-expression "Only maps can be used in spreads in constant maps."; |
| static const field core::Map<core::String, core::String> customMap = #C15; |
| static const field core::Map<core::String, core::String> mapWithCustomMap3 = invalid-expression "Only maps can be used in spreads in constant maps."; |
| static const field core::Map<dynamic, core::int> mapWithNonPrimitiveEqualsKey = invalid-expression "The key 'WithEquals {i: 42}' does not have a primitive operator '=='. |
| - 'WithEquals' is from 'pkg/front_end/testcases/general/constants/const_collections.dart'."; |
| static const field core::Map<core::int, core::int> mapWithDuplicates = invalid-expression "The key '42' conflicts with another existing key in the map."; |
| static get fooAsGetter() → core::List<core::String> |
| return #C6; |
| static get barAsGetter() → core::List<core::String> |
| return #C8; |
| static get bazAsGetter() → core::Set<core::String> |
| return #C10; |
| static get quxAsGetter() → core::Set<core::String> |
| return #C11; |
| static get quuxAsGetter() → core::Map<core::String, core::String> |
| return #C12; |
| static get quuzAsGetter() → core::Map<core::String, core::String> |
| return #C14; |
| static method main() → dynamic { |
| core::print(#C8); |
| core::print(#C11); |
| core::print(#C14); |
| core::print( block { |
| final core::Set<core::String> #t2 = col::LinkedHashSet::•<core::String>(); |
| #t2.{core::Set::add}{Invariant}("hello"){(core::String) → core::bool}; |
| } =>#t2); |
| core::print(#C16); |
| } |
| |
| constants { |
| #C1 = core::_Override {} |
| #C2 = null |
| #C3 = 42 |
| #C4 = "hello" |
| #C5 = "world" |
| #C6 = <core::String*>[#C4, #C5] |
| #C7 = "!" |
| #C8 = <core::String*>[#C4, #C5, #C7] |
| #C9 = self::CustomIterable {} |
| #C10 = <core::String*>{#C4, #C5} |
| #C11 = <core::String*>{#C4, #C5, #C7} |
| #C12 = <core::String*, core::String*>{#C4:#C5) |
| #C13 = "bye!" |
| #C14 = <core::String*, core::String*>{#C4:#C5, #C7:#C13) |
| #C15 = self::CustomMap {} |
| #C16 = <core::String*>{#C4} |
| } |
| |
| |
| Constructor coverage from constants: |
| org-dartlang-testcase:///const_collections.dart: |
| - CustomIterable. (from org-dartlang-testcase:///const_collections.dart:79:9) |
| - IterableBase. (from org-dartlang-sdk:///sdk/lib/collection/iterable.dart:219:9) |
| - Iterable. (from org-dartlang-sdk:///sdk/lib/core/iterable.dart:87:9) |
| - Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart:25:9) |
| - WithEquals. (from org-dartlang-testcase:///const_collections.dart:72:9) |
| - CustomMap. (from org-dartlang-testcase:///const_collections.dart:84:9) |