decode<T> static method
Implementation
static Stream<T> decode<T>(Stream<List<int>> value, Decodable<T> decodable) {
final stream = value.transform(_LineSplitter());
Map<int, _ReferenceValue>? refs = {};
final marker = refs[0] = _AsyncReferenceValue(); // Initialize with a value for marker 0
stream.listen((bytes) {
if (bytes.isEmpty) {
return; // Skip empty data
}
_parseBytes(bytes, refs, false);
}, onDone: () {
for (final value in refs.values) {
value.done();
}
});
return marker.decode<T>(decodable);
}