parseSseStream function
Implementation
Stream<ServerSentEvent> parseSseStream(Stream<List<int>> bytes) async* {
var buffer = '';
await for (final chunk in bytes.transform(utf8.decoder)) {
buffer += chunk;
while (true) {
final separator = _eventSeparator.firstMatch(buffer);
if (separator == null) break;
final block = buffer.substring(0, separator.start);
buffer = buffer.substring(separator.end);
final event = _parseSseBlock(block);
if (event != null) yield event;
}
}
final event = _parseSseBlock(buffer);
if (event != null) yield event;
}