Expand description
Uniform node contract, lifecycle, and step context.
Nodes are monomorphized by generics and const generics — there is no dynamic dispatch in the hot path. Port schemas and policies are type-encoded on each node.
Key types:
Node— the core trait:step(StepContext) -> StepResult.StepContext— per-step runtime context (clock, telemetry, input/output edges, memory manager).StepResult— scheduling hint returned after each step.ProcessResult— result of processing a single message inside a node.NodeKind— categorical label (source, process, model, sink, …).NodeCapabilities— capability descriptor for device streams and degrade tiers.
Submodules:
source—SourceNodetrait for 0-input nodes.sink—SinkNodetrait for 0-output nodes.model—InferenceModeladapter for inference nodes.link—NodeLinkandNodeDescriptorwiring helpers.bench— test nodes (bench/testfeature).
Re-exports§
pub use contract_tests::*;
Modules§
- bench
- (Work)bench test Node implementations.
- contract_
tests - Node contract test fixtures and helpers.
- link
- Node graph-link descriptor types.
- model
- Inference node (1×in → 1×out) that runs a generic
ComputeBackendmodel. - sink
- Sink node trait and adapter.
- source
- Source node traits and adapters.
Structs§
- Node
Capabilities - Node capability descriptor (ops, dtypes, layouts, streams).
- OutStep
Context - A
StepContextview that only exposes outputs / managers / clock / telemetry. - Step
Context - A context provided to nodes during
step, abstracting queues, managers, and services.
Enums§
- Node
Kind - Categories of nodes used in graph descriptors and builders.
- Process
Result - Result of processing a single input message.
- Step
Result - Result of a
stepcall indicating progress and scheduling hints.
Traits§
- Node
- The uniform node contract.