listen<T> static method

StreamCmd<T> listen<T>(
  1. Stream<T> stream, {
  2. required Msg? onData(
    1. T data
    ),
  3. Msg? onError(
    1. Object error,
    2. StackTrace stack
    )?,
  4. Msg? onDone()?,
})

A command that listens to a stream and sends messages for each event.

Returns a StreamCmd that can be cancelled.

final cmd = Cmd.listen(
  websocket.stream,
  onData: (data) => WebSocketDataMsg(data),
  onError: (e, s) => WebSocketErrorMsg(e.toString()),
  onDone: () => WebSocketClosedMsg(),
);

Implementation

static StreamCmd<T> listen<T>(
  Stream<T> stream, {
  required Msg? Function(T data) onData,
  Msg? Function(Object error, StackTrace stack)? onError,
  Msg? Function()? onDone,
}) {
  return StreamCmd<T>(
    stream: stream,
    onData: onData,
    onError: onError,
    onDone: onDone,
  );
}