deserializeAll function

List deserializeAll(
  1. Uint8List buffer, {
  2. DecodeExt? decodeExt,
})

Deserializes all MessagePack objects from the provided buffer into a list.

Useful for decoding buffers created with serializeAll or streams of MessagePack data.

Throws a MessagePackException if any part of the buffer contains invalid MessagePack data. Throws a RangeError if the buffer is exhausted prematurely mid-value.

Implementation

@pragma('vm:prefer-inline')
List<dynamic> deserializeAll(Uint8List buffer, {DecodeExt? decodeExt}) {
  final unpacker = Unpacker(buffer: buffer, decodeExt: decodeExt);
  final result = <dynamic>[];

  while (unpacker.hasBytesAvailable) {
    result.add(unpacker.unpack());
  }

  return result;
}