fast_immutable_collections 5.0.4 copy "fast_immutable_collections: ^5.0.4" to clipboard
fast_immutable_collections: ^5.0.4 copied to clipboard

outdated

Immutable lists, sets, maps, and multimaps, which are as fast as their native mutable counterparts. Extension methods and comparators for native Dart collections.

[5.0.4] - 2021/06/24 #

  • Introduce the Predicate typedef.

[5.0.2] - 2021/06/23 #

  • List.sortReversed() extension.

[5.0.1] - 2021/05/24 #

  • Iterable.restrict() restricts some item to one of those present in this iterable.

  • Reuse ILists and ISets only if they have the exact same generic type.

[5.0.0] - 2021/05/24 #

  • Const IList. Example: const IList<int> myList = IListConst([1, 2, 3]); Example of empty list: const IList<String> myList = IListConst([]);

  • Const ISet. Example: const ISet<int> mySet = ISetConst({1, 2, 3}); Example of empty set: const ISet<String> mySet = ISetConst({});

  • Methods IList.get(), IList.getOrNull() and IList.getAndMap().

  • Extensions List.get(), List.getOrNull() and List.getAndMap().

  • Better NNBD for divideListAsMap() and sortedLike().

  • Better Json serialization for NNBD.

  • Small IMapOfSets.fromIterable() improvement: added ignore parameter.

  • Breaking change: Removed empty() constructors from IList and ISet. You can create empty collections using IList() and ISet(), or myIList.clear() and myISet.clear(), or IList.withConfig(const [], myConfig) and ISet.withConfig(const [], myConfig), or const IListConst([]) and const ISetConst({}).

  • Breaking change: Removed all extensions like isNullOrEmpty and similar. This was a good idea before NNBD, but now if you use this Dart can't infer nullability anymore.

  • Breaking change. Please, add import "package:collection/collection.dart"; to your project. I have removed a few methods, like Iterable.mapIndexed, because they are now present in the collection package.

[4.0.6] - 2021/04/20 #

  • Extension List.withNullsRemoved().

[4.0.5] - 2021/04/19 #

  • The contains() methods now accept null.
  • Method toggle() now returns the correct bool.

[4.0.4] - 2021/04/18 #

  • Iterable.isFirst, isNotFirst, isLast and isNotLast.

[4.0.3] - 2021/04/16 #

  • Breaking change. Please, add import "package:collection/collection.dart"; to your project. I have removed the following methods because they are now present in the collection package:

    • Iterable.firstwhereOrNull
    • Iterable.whereNotNull
  • Breaking change: inRange() of nullable num now returns non-null, and orElse is not optional.

  • Added Iterable.mapNotNull extension. It's similar to map, but returns Iterable<T>, where T can be a non-nullable type. This is equivalent to map plus cast, but has a better name when you are just using it to solve NNBD problems.

[3.0.2] - 2021/04/14 #

  • Json serialization support for json_serializable with @JsonSerializable (for IList, ISet, IMap, ListSet, ListSetView).

  • Renamed extension isNotNullOrZero to isNotNullNotZero.

[2.0.4] - 2021/04/12 #

  • Factories IList<T>.orNull(), ISet<T>.orNull(), IMap<K, V>.orNull(), and IMapofSets<K, V>.orNull(), that help implement copyWith methods.

[2.0.2] - 2021/20/03 #

  • Breaking changes:
    • Iterable.removeDuplicates was renamed to Iterable.whereNoDuplicates to indicate it returns an Iterable.
    • Iterable.removeNulls was renamed to Iterable.whereNotNull to indicate it returns an Iterable.
    • List.removeNulls now is a List extension only. It mutates the List, removing nulls.
    • List.removeDuplicates now is a List extension only. It mutates the List, removing all duplicates.
    • Set.removeNulls now is a Set extension only. It mutates the Set, removing all nulls.

[2.0.1] - 2021/03/03 #

  • Nullsafety improvements.
  • isNotNullOrEmpty getter renamed to isNotNullNotEmpty.
  • isEmptyButNotNull getter to isEmptyNotNull.

[1.0.28] - 2021/02/09 #

  • More efficient Iterable.sortedLike() and List.sortLike() extensions.
  • Set.diffAndIntersect(), Iterable.everyIs() and Iterable.anyIs() extensions.

[1.0.26] - 2021/01/28 #

  • Better generics compatibility for equalItemsAndConfig.

[1.0.18] - 2021/01/19 #

  • IList.replace().
  • ISet.difference(), intersection, union now accept iterables.

[1.0.10] - 2021/01/18 #

  • areSameImmutableCollection() and areImmutableCollectionsWithEqualItems() functions.

[1.0.9] - 2021/01/12 #

  • Initial version.
379
likes
0
points
74.9k
downloads

Publisher

verified publisherglasberg.dev

Weekly Downloads

Immutable lists, sets, maps, and multimaps, which are as fast as their native mutable counterparts. Extension methods and comparators for native Dart collections.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

collection, meta

More

Packages that depend on fast_immutable_collections