newArray method

  1. @mustCallSuper
ArrayView<T> newArray (
  1. int length
)
@mustCallSuper

Returns a slice of length elements from the pre-allocated array of Arena. When length exceeds freeSpace it throws a RangeError.

Implementation

@mustCallSuper
ArrayView<T> newArray(int length) {
  assert(length > 0);
  if (freeSpace < length) {
    throw RangeError('Not enough free space');
  }
  final ptrAtIndex = buffer.elementAt(_index);
  final view = _getView(ptrAtIndex, length);
  final arr = ArrayView<T>.fromPtr(ptrAtIndex, view);
  _index += length;
  return arr;
}