vibe.d beta banner
get vibe.d
0.9.0

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

Class ConnectionProxyStream

Special kind of proxy stream for streams nested in a ConnectionStream.

class ConnectionProxyStream
  : ConnectionStream ;

This stream will forward all stream operations to the selected stream, but will forward all connection related operations to the given ConnectionStream. This allows wrapping embedded streams, such as SSL streams in a ConnectionStream.

Constructors

NameDescription
this (stream, connection_stream)
this (input, output, connection_stream)

Properties

NameTypeDescription
connected[get] boolDetermines The current connection status.
dataAvailableForRead[get] bool(Scheduled for deprecation) Queries 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] ulong(Scheduled for deprecation) Returns the maximum number of bytes that are known to remain available for read.
underlying[get, set] inout(vibe.internal.interfaceproxy.InterfaceProxy!(vibe.core.stream.Stream))The stream that is wrapped by this one

Methods

NameDescription
close () Actively closes the connection and frees associated resources.
finalize () Flushes and finalizes the stream.
flush () Flushes the stream and makes sure that all data is being written to the output device.
peek () Returns a temporary reference to the data that is currently buffered.
read (dst, mode) Fills the preallocated array 'bytes' with data from the stream.
waitForData (timeout) Blocks until data becomes available for read.
write (bytes, mode) Writes an array of bytes to the stream.
read (dst) Fills the preallocated array 'bytes' with data from the stream.
write (bytes) Writes an array of bytes to the stream.

Aliases

NameDescription
read
write
Authors

Sönke Ludwig

Copyright

© 2013-2016 Sönke Ludwig

License

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