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

AsyncLogSink

Defines one concrete safe mutable diagnostic-record sink. A sink may retain input through terminal WriteAsync completion, and retains neither message view nor record input afterward. Implementations document allocation, blocking, synchronization and failures. No runtime dictionary or global logger is created by concept satisfaction.

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.logging

import std.logging;

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

AsyncLogSink

pub concept AsyncLogSink<Self>

Defines one concrete safe mutable diagnostic-record sink. A sink may retain input through terminal WriteAsync completion, and retains neither message view nor record input afterward. Implementations document allocation, blocking, synchronization and failures. No runtime dictionary or global logger is created by concept satisfaction. Self: Concrete sink representation, owned by its caller or AsyncLogger.

AsyncLogSink.WriteAsync

requires fn WriteAsync(Level: LogLevel, Message: str, Token: CancellationToken) -> Task<Result<void, IoError>>;

Submits one enabled diagnostic record. Level: Severity; ordinary callers never submit Off. Message: UTF-8 backing retained through terminal task cleanup. Token: Owned cooperative cancellation observation. Return: Task yielding complete submission or typed failure, including any partial prefix.

AsyncLogSink.FlushAsync

requires fn FlushAsync(Token: CancellationToken) -> Task<Result<void, IoError>>;

Propagates previously accepted records through downstream layers. Token: Owned cooperative cancellation observation. Return: Task yielding complete propagation or typed failure; no durability promise.

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