vibe.d beta banner
get vibe.d
0.10.1

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

Class MemoryStream

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

class MemoryStream
  : RandomAccessStream ;

Constructors

NameDescription
this (data, writable, initial_size)

Properties

NameTypeDescription
capacity[get] ulong
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.
peekWindow[set] ulongControls the maximum size of the array returned by peek().
readable[get] boolDetermines if this stream is readable.
size[get] ulongReturns the total size of the file.
writable[get] boolDetermines if this stream is writable.

Methods

NameDescription
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.
seek (offset) Seeks to a specific position in the file if supported by the stream.
tell () Returns the current offset of the file pointer
truncate (size)
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

© 2012-2016 Sönke Ludwig

License

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