Skip to main content

Module wire

Module wire 

Source
Expand description

Shared Wire values and the mod-side transport.

Structs§

Fields
A hook record’s writable fields, in declaration order. Sharing these tuple codecs avoids generating and compiling a separate native codec for every named point record.
Id
A resource’s id: generation in the high half, slot in the low.
ReadOnly
A field which crosses with a record but is not a declared writeback destination.
Reader
A buffer values are read from.
Refused
A call record refused before it can be encoded, such as an oversized owned snapshot. It follows the normal Writer error path instead of sending a truncated call.
ResourceScope
Activates a call’s codec, including guest-to-host-to-guest callbacks. Dropping scopes out of order unlinks them: a retained inner guard cannot revive an expired outer codec. Slots are reused, so steady-state calls allocate no scope bookkeeping.
ScopeLease
A detached value lease. It never installs a codec or attests a native call root. Its lifetime is independent of the active resource scopes.
ScopeToken
A non-owning native lease. Checking it never retains the scope, codec, or pointee.
Slots
A generational slot map. Generation zero is reserved for protocol control values; exhausted generations retire their slot rather than wrapping and reviving an old id.
Stale
The id names no live value: it was freed, its call ended, or it was never given out.
Writer
A buffer values are written to. Reuse one to keep the allocation.

Enums§

ScopeError
A lease’s scope ended, or the caller left its owning thread.
WireError
Why a buffer is not a value of the type it was read as.

Constants§

MAX_DEPTH
The deepest nesting of one value (a component of a component of…) a reader accepts.

Traits§

Put
What can be written: every Wire value, and the borrowed forms a call passes (&str, &[T], Option<&T>), which are written as the owned value they stand for.
Record
A mutable hook argument, erased without changing its wire representation. Replies are decoded completely before any field is assigned.
ResourceCodec
Resolves resource identities for the side of a synchronous boundary call.
Wire
A type with a wire form.

Functions§

borrow_token
The nearest live runtime root, never an attestation supplied by a user codec.