description

# StreamSink<S> class abstract interface

A object that accepts stream events both synchronously and asynchronously.

A StreamSink combines the methods from StreamConsumer and EventSink.

The EventSink methods can't be used while the addStream is called. As soon as the addStream's Future completes with a value, the EventSink methods can be used again.

If addStream is called after any of the EventSink methods, it'll be delayed until the underlying system has consumed the data added by the EventSink methods.

When EventSink methods are used, the done Future can be used to catch any errors.

When close is called, it will return the done Future.

Implemented types
  - EventSink<S>
  - StreamConsumer<S>
Implementers
  - IOSink
  - StreamController
  - WebSocket

## Properties

done → Future
  Return a future which is completed when the StreamSink is finished.
  no setter
hashCode → int
  The hash code for this object.
  no setter inherited
runtimeType → Type
  A representation of the runtime type of the object.
  no setter inherited

## Methods

add(S event) → void
  Adds a data `event` to the sink.
  inherited
addError(Object error, [StackTrace? stackTrace]) → void
  Adds an `error` to the sink.
  inherited
addStream(Stream<S> stream) → Future
  Consumes the elements of `stream`.
  inherited
close() → Future
  Tells the stream sink that no further streams will be added.
  override
noSuchMethod(Invocation invocation) → dynamic
  Invoked when a nonexistent method or property is accessed.
  inherited
toString() → String
  A string representation of this object.
  inherited

## Operators

operator ==(Object other) → bool
  The equality operator.
  inherited