IOSink class

A combined byte and text output.

An IOSink combines a StreamSink of bytes with a StringSink, and allows easy output of both bytes and text.

Writing text (write) and adding bytes (add) may be interleaved freely.

While a stream is being added using addStream, any further attempts to add or write to the IOSink will fail until the addStream completes.

It is an error to add data to the IOSink after the sink is closed.

Implemented types
Implementers

Constructors

IOSink(StreamConsumer<List<int>> target, { Encoding encoding: utf8 })
Create an IOSink that outputs to a target StreamConsumer of bytes. [...]
factory

Properties

done Future
Get a future that will complete when the consumer closes, or when an error occurs. This future is identical to the future returned by close.
read-only, override
encoding Encoding
The Encoding used when writing strings. Depending on the underlying consumer this property might be mutable.
read / write
hashCode int
The hash code for this object. [...]
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

add(List<int> data) → void
Adds byte data to the target consumer, ignoring encoding. [...]
override
addError(Object error, [ StackTrace stackTrace ]) → void
Passes the error to the target consumer as an error event. [...]
override
addStream(Stream<List<int>> stream) Future
Adds all elements of the given stream to this. [...]
override
close() Future
Close the target consumer. [...]
override
flush() Future
Returns a Future that completes once all buffered data is accepted by the underlying StreamConsumer. [...]
write(Object obj) → void
Converts obj to a String by invoking Object.toString and adds the encoding of the result to the target consumer. [...]
override
writeAll(Iterable objects, [ String separator = "" ]) → void
Iterates over the given objects and writes them in sequence. [...]
override
writeCharCode(int charCode) → void
Writes the character of charCode. [...]
override
writeln([Object obj = "" ]) → void
Converts obj to a String by invoking Object.toString and writes the result to this, followed by a newline. [...]
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toString() String
Returns a string representation of this object.
inherited

Operators

operator ==(dynamic other) bool
The equality operator. [...]
inherited