insertAll method

  1. @override
void insertAll(
  1. int index,
  2. Iterable<E> iterable
)

Inserts all objects of iterable at position index in this list.

This increases the length of the list by the length of iterable and shifts all later objects towards the end of the list.

The list must be growable.

The index value must be non-negative and no greater than length.

If any of iterable's elements already exist in the list, a DuplicateValueError will be thrown if the list is strict, otherwise those values will be removed from the list and re-inserted at index.

Implementation

@override
void insertAll(int index, Iterable<E> iterable) {
  if (!growable) {
    throw UnsupportedError('Cannot add values to a fixed-length list.');
  }
  final list =
      _constructListFrom<E>(iterable, strict: strict, nullable: nullable);
  for (var element in list) {
    _prepareToInsertElement(element);
  }
  elements.insertAll(index, list);
}