fromBytes static method

Uint32 fromBytes(
  1. List<int> bytes, {
  2. Endian endian = Endian.big,
  3. int offset = 0,
})

Implementation

static Uint32 fromBytes(
  List<int> bytes, {
  Endian endian = Endian.big,
  int offset = 0,
}) {
  if (offset < 0 || bytes.length - offset < 4) {
    throw ArgumentException.invalidOperationArguments(
      "Uint32.fromBytes",
      reason: 'Need at least 4 bytes from offset.',
      details: {
        "offset": offset.toString(),
        "length": bytes.length.toString(),
      },
    );
  }
  int v;
  if (endian == Endian.big) {
    v =
        (bytes[offset] << 24) |
        (bytes[offset + 1] << 16) |
        (bytes[offset + 2] << 8) |
        bytes[offset + 3];
  } else {
    v =
        (bytes[offset + 3] << 24) |
        (bytes[offset + 2] << 16) |
        (bytes[offset + 1] << 8) |
        bytes[offset];
  }
  return Uint32._(v & _mask32);
}