vibe.d beta banner
get vibe.d

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

Interface RandomAccessStream

Interface for all streams supporting random access.

interface RandomAccessStream
  : Stream ;


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.
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 in this stream until the end is reached.


seekSeeks to a specific position in the file if supported by the stream.
tellReturns the current offset of the file pointer
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.
readFills the preallocated array 'bytes' with data from the stream.
writeWrites an array of bytes to the stream.
writePipes an InputStream directly into this OutputStream.

Sönke Ludwig


© 2012-2015 RejectedSoftware e.K.


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