Skip to content
FutureBlitz

    Install

    Import std.io.memory

    std.io.memory

    Streams over memory: MemoryStream, bytes to read, write, and move around in, as a file's are; StringReader, which reads a String's UTF-8; and StringWriter, which collects text.

    std/io/memory.fb

    Types

    MemoryStream class

    Public Class MemoryStream Implements Reader, Writer, Seeker

    Bytes in memory that it reads, writes, and moves around in, as a file's are, from where it is, which they grow past as they're written. Writing past the end fills what's between with 0s.

    std/io/memory.fb, line 11

    • Public New(bytes: UInt8[] = []) constructor #

      One of a copy of the bytes, from their start, or an empty one.

    • Public Property Count: Int64 property #

      How many bytes it has.

    • Public Method Read(into: Buffer<UInt8>): Int64 Throws IOError method #

      Reads up to into.Count bytes into the start of into, and gives how many it read: one at least, or 0 once the stream has ended, or for an empty Buffer.

      Doc from std.io.streams.Reader.Read.

    • Public Method Write(from: Buffer<UInt8>) Throws IOError method #

      Writes all of from's bytes, in order.

      Doc from std.io.streams.Writer.Write.

    • Public Method Seek(offset: Int64, origin: SeekOrigin): Int64 Throws IOError method #

      Moves to offset bytes from origin, and gives where that is from the start. A place before the start, or past what an Int64 counts, throws an IOError, and one past the end is the end for a Reader, and where a Writer writes next.

      Doc from std.io.streams.Seeker.Seek.

    • Public Method ToArray(): UInt8[] method #

      Its bytes, in a new array.

    StringReader class

    Public Class StringReader Implements Reader, Seeker

    Reads a String's UTF-8 bytes, and moves around in them.

    std/io/memory.fb, line 66

    • Public New(text: String) constructor #

      A StringReader of text's UTF-8 bytes.

    • Public Property Count: Int64 property #

      How many bytes the text has.

    • Public Method Read(into: Buffer<UInt8>): Int64 Throws IOError method #

      Reads up to into.Count bytes into the start of into, and gives how many it read: one at least, or 0 once the stream has ended, or for an empty Buffer.

      Doc from std.io.streams.Reader.Read.

    • Public Method Seek(offset: Int64, origin: SeekOrigin): Int64 Throws IOError method #

      Moves to offset bytes from origin, and gives where that is from the start. A place before the start, or past what an Int64 counts, throws an IOError, and one past the end is the end for a Reader, and where a Writer writes next.

      Doc from std.io.streams.Seeker.Seek.

    StringWriter class

    Public Class StringWriter Implements Writer

    Collects what's written to it, as text, which ToString gives.

    std/io/memory.fb, line 99

    • Public New() constructor #

      A new StringWriter, with nothing written.

    • Public Property Count: Int64 property #

      How many bytes it has.

    • Public Method Write(from: Buffer<UInt8>) Throws IOError method #

      Writes all of from's bytes, in order.

      Doc from std.io.streams.Writer.Write.

    • Public Method ToString(): String method #

      What it has, as text, with U+FFFD for each byte that doesn't start well-formed UTF-8.

    Report an issue with this page or with FutureBlitz on GitHub.