Int32Pointer#
Extension on Pointer specialized for the type argument Int32.
Properties#
value extension read / write#
The 32-bit two's complement integer at address.
A Dart integer is truncated to 32 bits (as if by .toSigned(32)) before
being stored, and the 32-bit value is sign-extended when it is loaded.
The address must be 4-byte aligned.
Available on Pointer<T extends NativeType>, provided by the Int32Pointer extension
Implementation
external int get value;
external void set value(int value);
Methods#
asTypedList() extension#
Creates a typed list view backed by memory in the address space.
The returned view will allow access to the memory range from address
to address + sizeOf<Int32>() * length.
The user has to ensure the memory range is accessible while using the returned list.
If provided, finalizer will be run on the pointer once the typed list
is GCed. If provided, token will be passed to finalizer, otherwise
the this pointer itself will be passed.
The address must be 4-byte aligned.
Available on Pointer<T extends NativeType>, provided by the Int32Pointer extension
Implementation
external Int32List asTypedList(
int length, {
@Since('3.1') Pointer<NativeFinalizerFunction>? finalizer,
@Since('3.1') Pointer<Void>? token,
});
deprecated elementAt() extension#
DEPRECATED
Use operator + instead
Pointer arithmetic (takes element size into account).
Available on Pointer<T extends NativeType>, provided by the Int32Pointer extension
Implementation
@Deprecated('Use operator + instead')
Pointer<Int32> elementAt(int index) =>
Pointer.fromAddress(address + sizeOf<Int32>() * index);
Operators#
operator +() extension#
A pointer to the offsetth Int32
after this one.
Returns a pointer to the Int32
whose address is
offset times the size of Int32
after the address of this pointer.
That is (this + offset).address == this.address + offset * sizeOf<Int32>().
Also (this + offset).value is equivalent to this[offset],
and similarly for setting.
Available on Pointer<T extends NativeType>, provided by the Int32Pointer extension
Implementation
@Since('3.3')
@pragma("vm:prefer-inline")
Pointer<Int32> operator +(int offset) =>
Pointer.fromAddress(address + sizeOf<Int32>() * offset);
operator -() extension#
A pointer to the offsetth Int32
before this one.
Equivalent to this + (-offset).
Returns a pointer to the Int32
whose address is
offset times the size of Int32
before the address of this pointer.
That is, (this - offset).address == this.address - offset * sizeOf<Int32>().
Also, (this - offset).value is equivalent to this[-offset],
and similarly for setting,
Available on Pointer<T extends NativeType>, provided by the Int32Pointer extension
Implementation
@Since('3.3')
@pragma("vm:prefer-inline")
Pointer<Int32> operator -(int offset) =>
Pointer.fromAddress(address - sizeOf<Int32>() * offset);
operator []() extension#
The 32-bit two's complement integer at address + sizeOf<Int32>() * index.
A Dart integer is truncated to 32 bits (as if by .toSigned(32)) before
being stored, and the 32-bit value is sign-extended when it is loaded.
The address must be 4-byte aligned.
Available on Pointer<T extends NativeType>, provided by the Int32Pointer extension
Implementation
external int operator [](int index);
operator []=() extension#
The 32-bit two's complement integer at address + sizeOf<Int32>() * index.
A Dart integer is truncated to 32 bits (as if by .toSigned(32)) before
being stored, and the 32-bit value is sign-extended when it is loaded.
The address must be 4-byte aligned.
Available on Pointer<T extends NativeType>, provided by the Int32Pointer extension
Implementation
external void operator []=(int index, int value);