blob: 13439a67464564ba33d3371ce8fdbbd2d1fe890a [file] [log] [blame]
library;
//
// 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:22:40: Error: Constant evaluation error:
// const List<String> barWithNullSpread = [...foo, ...nullList];
// ^
// pkg/front_end/testcases/general/constants/const_collections.dart:22:52: Context: Null value during constant evaluation.
// const List<String> barWithNullSpread = [...foo, ...nullList];
// ^
// pkg/front_end/testcases/general/constants/const_collections.dart:22:20: Context: While analyzing:
// const List<String> barWithNullSpread = [...foo, ...nullList];
// ^
//
// 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:40:39: Error: Constant evaluation error:
// const Set<String> quxWithNullSpread = {...baz, ...nullSet};
// ^
// pkg/front_end/testcases/general/constants/const_collections.dart:40:51: Context: Null value during constant evaluation.
// const Set<String> quxWithNullSpread = {...baz, ...nullSet};
// ^
// pkg/front_end/testcases/general/constants/const_collections.dart:40:19: Context: While analyzing:
// const Set<String> quxWithNullSpread = {...baz, ...nullSet};
// ^
//
// 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:57:27: Error: Constant evaluation error:
// const Map<String, String> quuzWithNullSpread = {...quux, ...nullMap};
// ^
// pkg/front_end/testcases/general/constants/const_collections.dart:57:61: Context: Null value during constant evaluation.
// const Map<String, String> quuzWithNullSpread = {...quux, ...nullMap};
// ^
// pkg/front_end/testcases/general/constants/const_collections.dart:57:27: Context: While analyzing:
// const Map<String, String> quuzWithNullSpread = {...quux, ...nullMap};
// ^
//
// 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::_GrowableList::•<core::int*>(0).{core::Iterable::iterator}{core::Iterator<core::int*>*};
abstract member-signature method cast<R extends core::Object* = dynamic>() core::Iterable<self::ConstIterable::cast::R*>*; -> core::Iterable::cast
abstract member-signature method followedBy(generic-covariant-impl core::Iterable<core::int*>* other) core::Iterable<core::int*>*; -> core::Iterable::followedBy
abstract member-signature method map<T extends core::Object* = dynamic>((core::int*) →* self::ConstIterable::map::T* toElement) core::Iterable<self::ConstIterable::map::T*>*; -> core::Iterable::map
abstract member-signature method where((core::int*) →* core::bool* test) core::Iterable<core::int*>*; -> core::Iterable::where
abstract member-signature method whereType<T extends core::Object* = dynamic>() core::Iterable<self::ConstIterable::whereType::T*>*; -> core::Iterable::whereType
abstract member-signature method expand<T extends core::Object* = dynamic>((core::int*) →* core::Iterable<self::ConstIterable::expand::T*>* toElements) core::Iterable<self::ConstIterable::expand::T*>*; -> core::Iterable::expand
abstract member-signature method contains(core::Object* element) core::bool*; -> core::Iterable::contains
abstract member-signature method forEach((core::int*) →* void action) void; -> core::Iterable::forEach
abstract member-signature method reduce(generic-covariant-impl (core::int*, core::int*) →* core::int* combine) core::int*; -> core::Iterable::reduce
abstract member-signature method fold<T extends core::Object* = dynamic>(self::ConstIterable::fold::T* initialValue, (self::ConstIterable::fold::T*, core::int*) →* self::ConstIterable::fold::T* combine) self::ConstIterable::fold::T*; -> core::Iterable::fold
abstract member-signature method every((core::int*) →* core::bool* test) core::bool*; -> core::Iterable::every
abstract member-signature method join([core::String* separator = #C1]) → core::String*; -> core::Iterable::join
abstract member-signature method any((core::int*) →* core::bool* test) core::bool*; -> core::Iterable::any
abstract member-signature method toList({core::bool* growable = #C2}) → core::List<core::int*>*; -> core::Iterable::toList
abstract member-signature method toSet() core::Set<core::int*>*; -> core::Iterable::toSet
abstract member-signature get length() core::int*; -> core::Iterable::length
abstract member-signature get isEmpty() core::bool*; -> core::Iterable::isEmpty
abstract member-signature get isNotEmpty() core::bool*; -> core::Iterable::isNotEmpty
abstract member-signature method take(core::int* count) core::Iterable<core::int*>*; -> core::Iterable::take
abstract member-signature method takeWhile((core::int*) →* core::bool* test) core::Iterable<core::int*>*; -> core::Iterable::takeWhile
abstract member-signature method skip(core::int* count) core::Iterable<core::int*>*; -> core::Iterable::skip
abstract member-signature method skipWhile((core::int*) →* core::bool* test) core::Iterable<core::int*>*; -> core::Iterable::skipWhile
abstract member-signature method firstWhere((core::int*) →* core::bool* test, {generic-covariant-impl () →* core::int* orElse = #C3}) → core::int*; -> core::Iterable::firstWhere
abstract member-signature method lastWhere((core::int*) →* core::bool* test, {generic-covariant-impl () →* core::int* orElse = #C3}) → core::int*; -> core::Iterable::lastWhere
abstract member-signature method singleWhere((core::int*) →* core::bool* test, {generic-covariant-impl () →* core::int* orElse = #C3}) → core::int*; -> core::Iterable::singleWhere
abstract member-signature method elementAt(core::int* index) core::int*; -> core::Iterable::elementAt
abstract member-signature method toString() core::String*; -> core::Iterable::toString
abstract member-signature get _identityHashCode() core::int*; -> core::Object::_identityHashCode
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) core::bool*; -> core::Object::_instanceOf
abstract member-signature method _simpleInstanceOf(dynamic type) core::bool*; -> core::Object::_simpleInstanceOf
abstract member-signature method _simpleInstanceOfTrue(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfTrue
abstract member-signature method _simpleInstanceOfFalse(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfFalse
abstract member-signature operator ==(dynamic other) core::bool*; -> core::Object::==
abstract member-signature get hashCode() core::int*; -> core::Object::hashCode
abstract member-signature method noSuchMethod(core::Invocation* invocation) dynamic; -> core::Object::noSuchMethod
abstract member-signature get runtimeType() core::Type*; -> core::Object::runtimeType
}
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 self::WithEquals* && o{self::WithEquals*}.{self::WithEquals::i}{core::int*} =={core::num::==}{(core::Object*) →* core::bool*} this.{self::WithEquals::i}{core::int*};
}
abstract member-signature get _identityHashCode() core::int*; -> core::Object::_identityHashCode
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) core::bool*; -> core::Object::_instanceOf
abstract member-signature method _simpleInstanceOf(dynamic type) core::bool*; -> core::Object::_simpleInstanceOf
abstract member-signature method _simpleInstanceOfTrue(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfTrue
abstract member-signature method _simpleInstanceOfFalse(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfFalse
abstract member-signature get hashCode() core::int*; -> core::Object::hashCode
abstract member-signature method toString() core::String*; -> core::Object::toString
abstract member-signature method noSuchMethod(core::Invocation* invocation) dynamic; -> core::Object::noSuchMethod
abstract member-signature get runtimeType() core::Type*; -> core::Object::runtimeType
}
class CustomIterable extends col::IterableBase<core::String*> /*hasConstConstructor*/ {
const constructor •() self::CustomIterable*
: super col::IterableBase::•()
;
get iterator() core::Iterator<core::String*>*
return core::_GrowableList::•<core::String*>(0).{core::Iterable::iterator}{core::Iterator<core::String*>*};
abstract member-signature method cast<R extends core::Object* = dynamic>() core::Iterable<self::CustomIterable::cast::R*>*; -> core::Iterable::cast
abstract member-signature method followedBy(generic-covariant-impl core::Iterable<core::String*>* other) core::Iterable<core::String*>*; -> core::Iterable::followedBy
abstract member-signature method map<T extends core::Object* = dynamic>((core::String*) →* self::CustomIterable::map::T* toElement) core::Iterable<self::CustomIterable::map::T*>*; -> core::Iterable::map
abstract member-signature method where((core::String*) →* core::bool* test) core::Iterable<core::String*>*; -> core::Iterable::where
abstract member-signature method whereType<T extends core::Object* = dynamic>() core::Iterable<self::CustomIterable::whereType::T*>*; -> core::Iterable::whereType
abstract member-signature method expand<T extends core::Object* = dynamic>((core::String*) →* core::Iterable<self::CustomIterable::expand::T*>* toElements) core::Iterable<self::CustomIterable::expand::T*>*; -> core::Iterable::expand
abstract member-signature method contains(core::Object* element) core::bool*; -> core::Iterable::contains
abstract member-signature method forEach((core::String*) →* void action) void; -> core::Iterable::forEach
abstract member-signature method reduce(generic-covariant-impl (core::String*, core::String*) →* core::String* combine) core::String*; -> core::Iterable::reduce
abstract member-signature method fold<T extends core::Object* = dynamic>(self::CustomIterable::fold::T* initialValue, (self::CustomIterable::fold::T*, core::String*) →* self::CustomIterable::fold::T* combine) self::CustomIterable::fold::T*; -> core::Iterable::fold
abstract member-signature method every((core::String*) →* core::bool* test) core::bool*; -> core::Iterable::every
abstract member-signature method join([core::String* separator = #C1]) → core::String*; -> core::Iterable::join
abstract member-signature method any((core::String*) →* core::bool* test) core::bool*; -> core::Iterable::any
abstract member-signature method toList({core::bool* growable = #C2}) → core::List<core::String*>*; -> core::Iterable::toList
abstract member-signature method toSet() core::Set<core::String*>*; -> core::Iterable::toSet
abstract member-signature get length() core::int*; -> core::Iterable::length
abstract member-signature get isEmpty() core::bool*; -> core::Iterable::isEmpty
abstract member-signature get isNotEmpty() core::bool*; -> core::Iterable::isNotEmpty
abstract member-signature method take(core::int* count) core::Iterable<core::String*>*; -> core::Iterable::take
abstract member-signature method takeWhile((core::String*) →* core::bool* test) core::Iterable<core::String*>*; -> core::Iterable::takeWhile
abstract member-signature method skip(core::int* count) core::Iterable<core::String*>*; -> core::Iterable::skip
abstract member-signature method skipWhile((core::String*) →* core::bool* test) core::Iterable<core::String*>*; -> core::Iterable::skipWhile
abstract member-signature method firstWhere((core::String*) →* core::bool* test, {generic-covariant-impl () →* core::String* orElse = #C3}) → core::String*; -> core::Iterable::firstWhere
abstract member-signature method lastWhere((core::String*) →* core::bool* test, {generic-covariant-impl () →* core::String* orElse = #C3}) → core::String*; -> core::Iterable::lastWhere
abstract member-signature method singleWhere((core::String*) →* core::bool* test, {generic-covariant-impl () →* core::String* orElse = #C3}) → core::String*; -> core::Iterable::singleWhere
abstract member-signature method elementAt(core::int* index) core::String*; -> core::Iterable::elementAt
abstract member-signature method toString() core::String*; -> core::Iterable::toString
abstract member-signature get _identityHashCode() core::int*; -> core::Object::_identityHashCode
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) core::bool*; -> core::Object::_instanceOf
abstract member-signature method _simpleInstanceOf(dynamic type) core::bool*; -> core::Object::_simpleInstanceOf
abstract member-signature method _simpleInstanceOfTrue(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfTrue
abstract member-signature method _simpleInstanceOfFalse(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfFalse
abstract member-signature operator ==(dynamic other) core::bool*; -> core::Object::==
abstract member-signature get hashCode() core::int*; -> core::Object::hashCode
abstract member-signature method noSuchMethod(core::Invocation* invocation) dynamic; -> core::Object::noSuchMethod
abstract member-signature get runtimeType() core::Type*; -> core::Object::runtimeType
}
class CustomMap extends core::Object implements core::Map<core::String*, core::String*> /*hasConstConstructor*/ {
const constructor •() self::CustomMap*
: super core::Object::•()
;
@#C4
get entries() core::Iterable<core::MapEntry<core::String*, core::String*>*>*
return core::_GrowableList::•<core::MapEntry<core::String*, core::String*>*>(0);
@#C4
operator [](core::Object* key) core::String*
return throw new core::UnimplementedError::•();
@#C4
operator []=(generic-covariant-impl core::String* key, generic-covariant-impl core::String* value) void
return throw new core::UnimplementedError::•();
@#C4
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::•();
@#C4
method clear() void
return throw new core::UnimplementedError::•();
@#C4
method containsKey(core::Object* key) core::bool*
return throw new core::UnimplementedError::•();
@#C4
method containsValue(core::Object* value) core::bool*
return throw new core::UnimplementedError::•();
@#C4
get isEmpty() core::bool*
return throw new core::UnimplementedError::•();
@#C4
get isNotEmpty() core::bool*
return throw new core::UnimplementedError::•();
@#C4
get keys() core::Iterable<core::String*>*
return throw new core::UnimplementedError::•();
@#C4
get length() core::int*
return throw new core::UnimplementedError::•();
@#C4
method remove(core::Object* key) core::String*
return throw new core::UnimplementedError::•();
@#C4
get values() core::Iterable<core::String*>*
return throw new core::UnimplementedError::•();
@#C4
method addAll(generic-covariant-impl core::Map<core::String*, core::String*>* other) void
return throw new core::UnimplementedError::•();
@#C4
method addEntries(generic-covariant-impl core::Iterable<core::MapEntry<core::String*, core::String*>*>* newEntries) void
return throw new core::UnimplementedError::•();
@#C4
method forEach((core::String*, core::String*) →* void f) void
return throw new core::UnimplementedError::•();
@#C4
method putIfAbsent(generic-covariant-impl core::String* key, generic-covariant-impl () →* core::String* ifAbsent) core::String*
return throw new core::UnimplementedError::•();
@#C4
method updateAll(generic-covariant-impl (core::String*, core::String*) →* core::String* update) void
return throw new core::UnimplementedError::•();
@#C4
method removeWhere((core::String*, core::String*) →* core::bool* predicate) void
return throw new core::UnimplementedError::•();
method update(generic-covariant-impl core::String* key, generic-covariant-impl (core::String*) →* core::String* update, {generic-covariant-impl () →* core::String* ifAbsent = #C3}) → 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::•();
abstract member-signature get _identityHashCode() core::int*; -> core::Object::_identityHashCode
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) core::bool*; -> core::Object::_instanceOf
abstract member-signature method _simpleInstanceOf(dynamic type) core::bool*; -> core::Object::_simpleInstanceOf
abstract member-signature method _simpleInstanceOfTrue(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfTrue
abstract member-signature method _simpleInstanceOfFalse(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfFalse
abstract member-signature operator ==(dynamic other) core::bool*; -> core::Object::==
abstract member-signature get hashCode() core::int*; -> core::Object::hashCode
abstract member-signature method toString() core::String*; -> core::Object::toString
abstract member-signature method noSuchMethod(core::Invocation* invocation) dynamic; -> core::Object::noSuchMethod
abstract member-signature get runtimeType() core::Type*; -> core::Object::runtimeType
}
static const field core::int* fortyTwo = #C5;
static const field dynamic fortyTwoAsDynamic = #C5;
static const field core::List<core::String*>* nullList = #C3;
static const field core::List<core::String*>* foo = #C8;
static const field core::List<core::String*>* bar = #C10;
static field core::List<core::String*>* barAsVar = block {
final core::List<core::String*>* #t1 = core::List::of<core::String*>(#C8);
#t1.{core::List::add}{Invariant}("!"){(core::String*) →* void};
} =>#t1;
static const field core::List<core::String*>* barWithNullSpread = invalid-expression "Null value during constant evaluation.";
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 = #C11;
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 = #C3;
static const field core::Set<core::String*>* baz = #C12;
static const field core::Set<core::String*>* qux = #C13;
static const field core::Set<core::String*>* quxWithNullSpread = invalid-expression "Null value during constant evaluation.";
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 = #C3;
static const field core::Map<core::String*, core::String*>* quux = #C14;
static const field core::Map<core::String*, core::String*>* quuz = #C16;
static const field core::Map<core::String*, core::String*>* quuzWithNullSpread = invalid-expression "Null value during constant evaluation.";
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 = #C17;
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 #C8;
static get barAsGetter() core::List<core::String*>*
return #C10;
static get bazAsGetter() core::Set<core::String*>*
return #C12;
static get quxAsGetter() core::Set<core::String*>*
return #C13;
static get quuxAsGetter() core::Map<core::String*, core::String*>*
return #C14;
static get quuzAsGetter() core::Map<core::String*, core::String*>*
return #C16;
static method main() dynamic {
core::print(#C10);
core::print(#C13);
core::print(#C16);
core::print( block {
final core::Set<core::String*>* #t2 = new col::_CompactLinkedHashSet::•<core::String*>();
#t2.{core::Set::add}{Invariant}("hello"){(core::String*) →* core::bool*};
} =>#t2);
core::print(#C18);
}
constants {
#C1 = ""
#C2 = true
#C3 = null
#C4 = core::_Override {}
#C5 = 42
#C6 = "hello"
#C7 = "world"
#C8 = <core::String*>[#C6, #C7]
#C9 = "!"
#C10 = <core::String*>[#C6, #C7, #C9]
#C11 = self::CustomIterable {}
#C12 = <core::String*>{#C6, #C7}
#C13 = <core::String*>{#C6, #C7, #C9}
#C14 = <core::String*, core::String*>{#C6:#C7)
#C15 = "bye!"
#C16 = <core::String*, core::String*>{#C6:#C7, #C9:#C15)
#C17 = self::CustomMap {}
#C18 = <core::String*>{#C6}
}
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)