Expand description
Wave-protocol data types — the decision-locked, language-neutral core.
These types are pinned by the spec and the D# log, so they are concrete Rust
representations of the current protocol surface.
Representation is per-language (D11: in-process tuple vs wire protobuf are
decoupled); the semantics below match ~/src/graphrefly/spec/rules.jsonl.
Structs§
- Handle
- A pool-relative pool callback handle — pure data, no methods (D7).
- LockId
- Caller-chosen opaque pause-lock identifier (D10).
- Pull
Demand - Explicit pull demand payload (D269/D272).
Enums§
- Message
- One protocol message. A
Vec<Message<T>>(Wave) is one wave (D8) and may mix tiers. The closed set is 11 kinds (D9 + D269 + theStarthandshake); adding a kind is a constitutional change (/spec-amend). - Tier
- The 7-tier const table (D34, amends R-tier numbering).
Type Aliases§
- AnyValue
- The erased in-process value type — the Rust analogue of TS’s
unknown(value representation decision, per-language impl, seeCLEAN-SLATE.md). - Graph
Error - The cross-language “top” error type — error is unknown (D31).
- Wave
- One wave — a single
msgsarray, may mix tiers (D8).