Under heavy development. This site describes the intended 1.0 language. Current features and performance vary. Development status
Sn50SnThe SnAPI programming language
Snapshot · Oct 24, 2026 · Frozen documentation

BorrowingUnaryCallable

Defines safe readonly invocation borrowing one retained input item.

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

import std.iteration;

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

BorrowingUnaryCallable

pub concept BorrowingUnaryCallable<Self, T, R>

Defines safe readonly invocation borrowing one retained input item.

Authored objects provide public readonly Invoke; generated lambdas satisfy the authenticated canonical witness. The borrowed argument cannot authorize moving or mutating the payload. Exact result/access and safety are preserved. Concrete captures use ordinary lifecycle; no box, allocation, lock or backing retention is added. Serialize callback use when its backing requires it. Self: Concrete callback/environment type. T: Retained source payload type; reference payloads keep exact alias rules. R: Exact callback output type. Warning: Borrowed capture and output backing must remain valid through use.

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