Generic storage for types that implement the ConnectionStream interface
Generic storage for types that implement the InputStream interface
Generic storage for types that implement the OutputStream interface
Generic storage for types that implement the RandomAccessStream interface
Generic storage for types that implement the Stream interface
Stream implementation acting as a sink with no function.
Tests if the given aggregate type is a valid connection stream.
Tests if the given aggregate type is a valid input stream.
Tests if the given aggregate type is a valid output stream.
Tests if the given aggregate type is a valid random access stream.
Tests if the given aggregate type is a valid bidirectional stream.
Returns a NullOutputStream instance.
Pipes an InputStream directly into this OutputStream.
Interface for streams based on a connection.
Interface for all classes implementing readable streams.
Interface for all classes implementing writeable streams.
Interface for all streams supporting random access.
Interface for all classes implementing readable and writable streams.
Verifies that the given type is a valid connection stream.
Verifies that the given type is a valid input stream.
Verifies that the given type is a valid output stream.
Verifies that the given type is a valid random access stream.
Verifies that the given type is a valid bidirectional stream.
Marks a function as blocking.
Subject to the terms of the MIT license, as written in the included LICENSE.txt file.
© 2012-2016 Sönke Ludwig
Generic stream interface used by several stream-like classes.
This module defines the basic (buffered) stream primitives. For concrete stream types, take a look at the vibe.stream package. The vibe.stream.operations module contains additional high-level operations on streams, such as reading streams by line or as a whole.
Note that starting with vibe-core 1.0.0, streams can be of either struct or class type. Any APIs that take streams as a parameter should use a template type parameter that is tested using the appropriate trait (e.g. isInputStream) instead of assuming the specific interface type (e.g. InputStream).