bytesToInt function

int bytesToInt(
  1. List<int> bytesData, {
  2. bool signed = false,
  3. Endian byteOrder = Endian.little,
})

Converts bytes to an integer.

Implementation

int bytesToInt(List<int> bytesData,
    {bool signed = false, Endian byteOrder = Endian.little}) {
  final ByteData byteData = ByteData.sublistView(Uint8List.fromList(bytesData));
  if (signed) {
    switch (bytesData.length) {
      case 1:
        return byteData.getInt8(0);
      case 2:
        return byteData.getInt16(0, byteOrder);
      case 4:
        return byteData.getInt32(0, byteOrder);
      case 8:
        return byteData.getInt64(0, byteOrder);
      default:
        throw ArgumentError('Invalid byte length for signed integer');
    }
  } else {
    switch (bytesData.length) {
      case 1:
        return byteData.getUint8(0);
      case 2:
        return byteData.getUint16(0, byteOrder);
      case 4:
        return byteData.getUint32(0, byteOrder);
      case 8:
        return byteData.getUint64(0, byteOrder);
      default:
        throw ArgumentError('Invalid byte length for unsigned integer');
    }
  }
}