collection_ext

Creator: coderz1093

Last updated:

Add to Cart

Description:

collection ext

collection_ext #




A set of extension methods for Dart collections, designed for the purpose of making it easier to write concise, functional-programming-styled Dart code.
Working on an Iterable for example, with collection_ext, we can write:
iterable.forEachIndexed((i, x) => /* use index i & element x */)
copied to clipboard
instead of:
var i = 0;
for (var x in iterable) {
// use index i & element x
i++;
}
copied to clipboard
Usage #
Import all extension methods at once:
import 'package:collection_ext/all.dart';

Column(
children: getItems()
.nonNull
.mapIndexed((i, item) => Text("#$i ${item.title}"))
.asList(),
)
copied to clipboard
Or you can import the needed module only, for example:
import 'package:collection_ext/iterables.dart';

final diff = [2, 4, 6].foldRight(0, (x, acc) => x - acc);
copied to clipboard
Nullability #
All extension methods of Iterables & Maps are null-safe. For example:
Iterable itr;
assert(itr.sum() == 0);

Map map;
assert(map.none((k, v) => true) == true);
copied to clipboard
See nullability tests for more details.
Available Modules #

Extensions to Iterables
Extensions to Maps
Ranges & related extensions

👉 See API Docs for more details
I'm working on more useful extensions, PRs are welcome! 🍻🖖

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.