get method

Next event, or null once the stream is closed and drained.

Implementation

Future<StreamEvent?> get() {
  if (_items.isNotEmpty) {
    return Future.value(_items.removeAt(0));
  }
  if (_closed) {
    return Future.value(null);
  }
  final completer = Completer<StreamEvent?>();
  _waiters.add(completer);
  return completer.future;
}