| // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| import 'dart:collection'; |
| |
| class ConstIterable extends IterableBase<int> { |
| const ConstIterable(); |
| |
| Iterator<int> get iterator => <int>[].iterator; |
| } |
| |
| class ConstMap implements Map<int, String> { |
| const ConstMap(); |
| |
| Iterable<MapEntry<int, String>> get entries => const []; |
| |
| bool get isEmpty => throw UnsupportedError("unsupported"); |
| bool get isNotEmpty => throw UnsupportedError("unsupported"); |
| Iterable<int> get keys => throw UnsupportedError("unsupported"); |
| int get length => throw UnsupportedError("unsupported"); |
| Iterable<String> get values => throw UnsupportedError("unsupported"); |
| String? operator [](Object? key) => throw UnsupportedError("unsupported"); |
| operator []=(int key, String value) => throw UnsupportedError("unsupported"); |
| bool add(Object? value) => throw UnsupportedError("unsupported"); |
| void addAll(Map<int, String> map) => throw UnsupportedError("unsupported"); |
| void addEntries(Iterable<MapEntry<int, String>> entries) => |
| throw UnsupportedError("unsupported"); |
| Map<RK, RV> cast<RK, RV>() => throw UnsupportedError("unsupported"); |
| void clear() => throw UnsupportedError("unsupported"); |
| bool containsKey(Object? key) => throw UnsupportedError("unsupported"); |
| bool containsValue(Object? value) => throw UnsupportedError("unsupported"); |
| void forEach(void Function(int key, String value) f) => |
| throw UnsupportedError("unsupported"); |
| Map<K2, V2> map<K2, V2>(MapEntry<K2, V2> Function(int key, String value) f) => |
| throw UnsupportedError("unsupported"); |
| String putIfAbsent(int key, String Function() ifAbsent) => |
| throw UnsupportedError("unsupported"); |
| String? remove(Object? key) => throw UnsupportedError("unsupported"); |
| void removeWhere(bool Function(int key, String value) predicate) => |
| throw UnsupportedError("unsupported"); |
| String update(int key, String Function(String value) update, |
| {String Function()? ifAbsent}) => |
| throw UnsupportedError("unsupported"); |
| void updateAll(String Function(int key, String value) update) => |
| throw UnsupportedError("unsupported"); |
| } |
| |
| class CustomMap with MapMixin<int, String> { |
| Iterable<int> get keys => []; |
| String? operator [](Object? key) => ""; |
| operator []=(int key, String value) {} |
| String? remove(Object? key) => throw UnsupportedError("unsupported"); |
| void clear() => throw UnsupportedError("unsupported"); |
| } |
| |
| class CustomSet extends SetBase<int> { |
| bool add(int value) => throw UnsupportedError("unsupported"); |
| bool contains(Object? value) => throw UnsupportedError("unsupported"); |
| Iterator<int> get iterator => <int>[].iterator; |
| int get length => 0; |
| int? lookup(Object? value) => throw UnsupportedError("unsupported"); |
| bool remove(Object? value) => throw UnsupportedError("unsupported"); |
| Set<int> toSet() => this; |
| } |
| |
| class Equality { |
| final int id; |
| final String name; |
| const Equality(this.id, this.name); |
| int get hashCode => id; |
| bool operator ==(Object? other) => other is Equality && id == other.id; |
| String toString() => "$id:$name"; |
| } |