Expand description
OpenQuiver graph IR.
The bottom layer: plain data with no I/O and no knowledge of how a graph looks on disk. The file format is a projection of this IR, never the other way around.
Split by responsibility rather than by size: identity and nodes, wires, the graph, the tables keyed by those identities, and the editing operations that have to keep all of them in step.
Structs§
- Document
- A graph together with everything keyed by the identities inside it.
- Edge
- A wire between two pins.
- Graph
- A graph: nodes joined by exec and data wires.
- Layout
- Node positions on the canvas.
- Node
- A node instance in a graph.
- Node
Name - A node’s name within its graph, which is also its identity.
- Node
Type Id - A node type identifier, such as
acp.promptorflow.branch. - PinRef
- A reference to one pin of one node, as in
ask.text. - Trivia
- Ordinary
//comments, keyed by what they describe.
Enums§
- Anchor
- Where a comment is anchored.
- Data
Type - What a data pin carries.
- Edge
Kind - The kind of wire connecting two pins.
- Rename
Error - Why a rename could not be performed.
- Value
- A literal in a node’s configuration block.
Functions§
- is_
identifier - Whether a name is one the grammar can write back out.