insert9 method
Inserts nine elements into the iterable at the specified index.
Takes the specified elements and inserts them into the iterable at the
position index
.
If index
is less than zero, an ArgumentError is thrown.
If iteration of this iterable is exausted before the position index
is reached, a RangeError is thrown.
Implementation
Iterable<T> insert9(
int index, T v1, T v2, T v3, T v4, T v5, T v6, T v7, T v8, T v9) sync* {
if (index == 0) {
yield* prepend9(v1, v2, v3, v4, v5, v6, v7, v8, v9);
return;
}
if (index < 0) {
throw ArgumentError('Parameter "index" must be greater than zero.');
}
final iterator = this.iterator;
var i = 0;
while (iterator.moveNext()) {
if (i == index) {
yield v1;
yield v2;
yield v3;
yield v4;
yield v5;
yield v6;
yield v7;
yield v8;
yield v9;
}
yield iterator.current;
i++;
}
if (index >= i) {
throw RangeError.index(index, this, null, null, i);
}
}