getOrCreateStreamController<T> static method

StreamController<T> getOrCreateStreamController<T>(
  1. Readable<T> readable
)

Implementation

static StreamController<T> getOrCreateStreamController<T>(
    Readable<T> readable) {
  assert(() {
    if (readable is ReadableNode) {
      return !(readable as ReadableNode).isDisposed;
    }
    return true;
  }(), "${readable.runtimeType} is disposed");

  StreamController<T>? controller =
      _readableStreams[readable] as StreamController<T>?;

  if (controller == null) {
    final newController = createWatchedStreamController(readable);
    _readableStreams[readable] = newController;
    controller = newController;
  }

  return controller;
}