Метод expand
Iterable<T> expand<T>(Расширяет каждый элемент этого Iterable в ноль или более элементов.
Полученная Iterable проходит через элементы, возвращаемые f для каждого элемента этого, в порядке итерации.
Возвращаемая Iterable ленивая и вызывает f для каждого элемента этого каждый раз, когда она итерируется.
Пример:
var pairs = [[1, 2], [3, 4]]; var flattened = pairs.expand((pair) => pair).toList(); print(flattened); // => [1, 2, 3, 4]; var input = [1, 2, 3]; var duplicated = input.expand((i) => [i, i]).toList(); print(duplicated); // => [1, 1, 2, 2, 3, 3]
Исходный код
Iterable<T> expand<T>(Iterable<T> f(String element)) =>
readClasses().expand<T>(f);
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-svg/AttributeClassSet/expand.html