vibe.d beta banner
get vibe.d

Asynchronous I/O that doesn’t get in your way, written in D

Interface ConnectionStream

Interface for streams based on a connection.

interface ConnectionStream
  : Stream ;

Connection streams are based on streaming socket connections, pipes and similar end-to-end streams.


connected[get]boolDetermines The current connection status.
dataAvailableForRead[get]boolQueries if there is data available for immediate, non-blocking read.
empty[get]boolReturns true iff the end of the input stream has been reached.
leastSize[get]ulongReturns the maximum number of bytes that are known to remain in this stream until the end is reached. After leastSize() bytes have been read, the stream will either have reached EOS and empty() returns true, or leastSize() returns again a number > 0.


closeActively closes the connection and frees associated resources.
waitForDataSets a timeout until data has to be availabe for read. Returns false on timeout.
finalizeFlushes and finalizes the stream.
flushFlushes the stream and makes sure that all data is being written to the output device.
peekReturns a temporary reference to the data that is currently buffered, typically has the size leastSize() or 0 if dataAvailableForRead() returns false.
readFills the preallocated array 'bytes' with data from the stream.
writeWrites an array of bytes to the stream.
writeWrites an array of chars to the stream.
writePipes an InputStream directly into this OutputStream.

See also


Sönke Ludwig


© 2012-2013 RejectedSoftware e.K.


Subject to the terms of the MIT license, as written in the included LICENSE.txt file.