Iterable<U> mapIndexed<U>(U Function(int index, T item) f) sync* { var index = 0; for (final item in this) { yield f(index, item); index++; } }