allocate<T extends NativeType> method Null safety

Pointer<T> allocate<T extends NativeType>(
  1. int byteCount,
  2. {int? alignment}
)

Allocates byteCount bytes of memory on the native heap.

If alignment is provided, the allocated memory will be at least aligned to alignment bytes.

To allocate a multiple of sizeOf<T>() bytes, call the allocator directly as a function: allocator<T>(count) (see AllocatorAlloc.call for details).

// This allocates two bytes. If you intended two Int32's, this is an
// error.
allocator.allocate<Int32>(2);

// This allocates eight bytes, which is enough space for two Int32's.
// However, this is not the idiomatic way.
allocator.allocate<Int32>(sizeOf<Int32>() * 2);

// The idiomatic way to allocate space for two Int32 is to call the
// allocator directly as a function.
allocator<Int32>(2);

Throws an ArgumentError if the number of bytes or alignment cannot be satisfied.

Implementation

Pointer<T> allocate<T extends NativeType>(int byteCount, {int? alignment});