Under heavy development. This site describes the intended 1.0 language. Current features and performance vary. Development status
Sn50SnThe SnAPI programming language
Development · Evolving reference

Writer

Defines a structural safe mutable byte-stream operation. Accepts caller-owned bytes; flush propagates accepted bytes downstream. Successful/failed transfer counts may not exceed the supplied byte view. Implementations document blocking, retention and cancellation; the concept introduces no box, allocation, global stream or implicit event loop.

Sn is under heavy development. This reference includes the intended 1.0 design; features may be incomplete in the current compiler. Read the status →

Module std.io

import std.io;

Public declaration contracts and authored examples. A page can document several related symbols. Implementation bodies are excluded.

Writer

pub concept Writer<Self>

Defines a structural safe mutable byte-stream operation. Accepts caller-owned bytes; flush propagates accepted bytes downstream. Successful/failed transfer counts may not exceed the supplied byte view. Implementations document blocking, retention and cancellation; the concept introduces no box, allocation, global stream or implicit event loop. Self: Concrete mutable stream state.

Writer.Write

requires fn Write(Input: readonly byte[]) -> Result<usize, IoError>;

Starts a safe bounded byte transfer. Input: Borrowed readonly input slice; backing must remain valid through completion. Return: accepted/transferred byte count or portable failure with partial prefix.

Writer.Flush

requires fn Flush() -> Result<void, IoError>;

Propagates accepted bytes through downstream layers without durability promise. Return: complete propagation or portable failure.

Documentation snapshot: October 24, 2026 About versions ↗
Searching Development · language & standard library