| // Copyright (c) 2017, 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. |
| |
| // test w/ `dart test -N prefer_collection_literals` |
| |
| import 'dart:collection'; |
| |
| //ignore_for_file: unused_local_variable |
| void main() { |
| var listToLint = new List(); //LINT |
| var mapToLint = new Map(); // LINT |
| var LinkedHashMapToLint = new LinkedHashMap(); // LINT |
| |
| var m1 = Map.unmodifiable({}); //OK |
| var m2 = Map.fromIterable([]); //OK |
| var m3 = Map.fromIterables([], []); //OK |
| |
| var constructedListInsideLiteralList = [[], new List()]; // LINT |
| var literalListInsideLiteralList = [[], []]; // OK |
| var fiveLengthList = new List(5); // OK |
| |
| var namedConstructorList = new List.filled(5, true); // OK |
| var namedConstructorMap = new Map.identity(); // OK |
| var namedConstructorLinkedHashMap = new LinkedHashMap.identity(); // OK |
| |
| var literalList = []; // OK |
| var literalMap = {}; // OK |
| |
| Set s = new Set(); // LINT |
| var s1 = new Set<int>(); // LINT |
| Set<int> s2 = new Set(); // LINT |
| var s3 = new Set.from(['foo', 'bar', 'baz']); // LINT |
| var s4 = new Set.of(['foo', 'bar', 'baz']); // LINT |
| |
| var s5 = ['foo', 'bar', 'baz'].toSet(); // LINT |
| |
| var s6 = new LinkedHashSet.from(['foo', 'bar', 'baz']); // LINT |
| var s7 = new LinkedHashSet.of(['foo', 'bar', 'baz']); // LINT |
| var s8 = new LinkedHashSet.from(<int>[]); // LINT |
| var s9 = new Set<int>.from([]); // LINT |
| |
| var is1 = new Set.identity(); // OK |
| var is2 = new LinkedHashSet.identity(); // OK |
| |
| var ss1 = new Set(); // LINT |
| var ss2 = new LinkedHashSet(); // LINT |
| var ss3 = LinkedHashSet.from([]); // LINT |
| var ss4 = LinkedHashSet.of([]); // LINT |
| |
| Set<int> ss5 = LinkedHashSet<int>(); // LINT |
| LinkedHashSet<int> ss6 = LinkedHashSet<int>(); // OK |
| Object ss7 = LinkedHashSet<int>(); // LINT |
| |
| printObject(Set()); // LINT |
| printSet(Set()); // LINT |
| printObject(LinkedHashSet()); // LINT |
| printSet(LinkedHashSet<int>()); // LINT |
| printIndentedSet(0, LinkedHashSet<int>()); // LINT |
| printHashSet(LinkedHashSet<int>()); // OK |
| printIndentedHashSet(0, LinkedHashSet<int>()); // OK |
| |
| printUnresolved(LinkedHashSet<int>()); // OK |
| |
| Set<int> ss7 = LinkedHashSet.from([1, 2, 3]); // LINT |
| LinkedHashSet<int> ss8 = LinkedHashSet.from([1, 2, 3]); // OK |
| |
| Iterable iter = Iterable.empty(); // OK |
| var sss = Set.from(iter); // OK |
| |
| LinkedHashSet<String> sss1 = <int, LinkedHashSet<String>>{}.putIfAbsent(3, () => LinkedHashSet<String>()); // OK |
| |
| var lhs = LinkedHashSet(equals: (a, b) => false, hashCode: (o) => 13)..addAll({}); // OK |
| |
| LinkedHashMap hashMap = LinkedHashMap(); // OK |
| Object hashMap2 = LinkedHashMap(); // LINT |
| |
| printObject(Map()); // LINT |
| printMap(Map()); // LINT |
| printObject(LinkedHashMap()); // LINT |
| printMap(LinkedHashMap<int, int>()); // LINT |
| printHashMap(LinkedHashMap<int, int>()); // OK |
| |
| LinkedHashMap<String, String> lhm = <int, LinkedHashMap<String,String>>{}.putIfAbsent(3, () => LinkedHashMap<String, String>()); // OK |
| } |
| |
| void printObject(Object o) => print('$o'); |
| void printSet(Set<int> ids) => print('$ids!'); |
| void printIndentedSet(int indent, Set<int> ids) => print('$ids!'); |
| void printHashSet(LinkedHashSet<int> ids) => printSet(ids); |
| void printIndentedHashSet(int indent, LinkedHashSet<int> ids) => printSet(ids); |
| void printMap(Map map) => print('$map!'); |
| void printHashMap(LinkedHashMap map) => printMap(map); |