Expand description
Programmatic assembly API for building Polydat Kernels.
The assembler validates wiring and types, auto-inserts edge adapters,
topologically sorts nodes, and builds a kernel on any engine: a host
adds nodes and wires (or takes the assembler the DSL built from
source) and calls PolydatAssembler::compile_kernel for the default
engine, PolydatAssembler::compile_with for a named one, or
PolydatAssembler::compile for the interpreter kernel as a concrete
type. The try_compile* constructors build one engine’s kernel as its
concrete type for the differential suites and the ladder.
Structs§
- Polydat
Assembler - Builder for assembling a Polydat Kernel programmatically.
Enums§
- Assembly
Error - Errors that can occur during assembly.
- WireRef
- A reference to a value in the assembler: either a coordinate or a node output port.
Functions§
- auto_
adapter - The lossless adapter node from one port type to another, if the catalog has one: what the assembler inserts between a wire and a port of different types.
- boundary_
adapter - Boundary adapter catalog. Consulted by
adapt_boundary_valuewhen a host-injected scope value crosses into a typed slot. Strictly a superset ofauto_adapter: every intra-graph adapter is also a boundary adapter, plus all the lossy / parseable / shape- checking adapters that can panic on input the assembler can’t statically verify.