scanLongTagValue function

Iterable<LongTagValue> scanLongTagValue (
  1. Uint8List bytes
)

Implementation

Iterable<LongTagValue> scanLongTagValue(Uint8List bytes) sync* {
  var index = 0;
  var byteData = bytes.buffer.asByteData();
  while (index < bytes.length) {
    var tag = bytes.sublist(index, index += 2);
    var length = byteData.getUint32(index, Endian.little);
    index += 4;
    var value = bytes.sublist(index, index += length);
    yield LongTagValue(tag, value);
  }
}