vibe.d beta banner
get vibe.d

Class MemoryStream

Provides a random access stream interface for accessing an array of bytes.

Inherits from


Name Description
this Creates a new stream with the given data array as its contents.


Name Type Description
capacity [get] ulong
dataAvailableForRead [get] bool Queries if there is data available for immediate, non-blocking read.
empty [get] bool Returns true iff the end of the input stream has been reached.
leastSize [get] ulong Returns 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.
peekWindow [set] ulong Controls the maximum size of the array returned by peek().
readable [get] bool Determines if this stream is readable.
size [get] ulong Returns the total size of the file.
writable [get] bool Determines if this stream is writable.


Name Description
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 Fills the preallocated array 'bytes' with data from the stream.
seek Seeks to a specific position in the file if supported by the stream.
tell Returns the current offset of the file pointer
write Writes an array of bytes to the stream.
write Pipes an InputStream directly into this OutputStream.
write Writes an array of chars to the stream.
block ddox.authorsblock ddox.copyrightblock ddox.license