getInt64LE function

int getInt64LE(
  1. ByteData data,
  2. int offset
)

Reads a little-endian int64 at offset.

dart2js has no ByteData.getInt64; assemble from two 32-bit halves there. Exact on the VM and dart2wasm; 53-bit fidelity on dart2js (where Dart ints are already 53-bit).

Implementation

int getInt64LE(ByteData data, int offset) {
  if (kNitroWeb) {
    final lo = data.getUint32(offset, Endian.little);
    final hi = data.getInt32(offset + 4, Endian.little);
    return hi * 0x100000000 + lo;
  }
  return data.getInt64(offset, Endian.little);
}