toList method Null safety

List<E> toList(
  1. {bool growable = true}
)

Creates a List containing the elements of this Iterable.

The elements are in iteration order. The list is fixed-length if growable is false.

Implementation

List<E> toList({bool growable = true}) {
  int mask = _table.length - 1;
  int length = (_tail - _head) & mask;
  if (length == 0) return List<E>.empty(growable: growable);

  var list = List<E>.filled(length, first, growable: growable);
  for (int i = 0; i < length; i++) {
    list[i] = _table[(_head + i) & mask] as E;
  }
  return list;
}