Skip to main content

Module machine

Module machine 

Source
Expand description

The resolved machine: a flat state table (indexed by NodeId) with all transition_to references resolved to NodeIds, event scopes parsed, and actions/initials/choices expanded. Built once from crate::model::RawMachine.

Building is two-phase: first every state node is registered (completing the name table), then a second walk resolves all targets — which may be forward references to states defined later in the YAML.

Structs§

AfterDef
ChoiceBranchDef
EsvDecl
EventDecl
InitialDef
Machine
MigrationDef
PayloadField
RegionDef
StateDef
TransitionDef

Enums§

HistoryKind
Scope
StateKind

Functions§

build
parse_duration
Parse a duration like “30s”, “5m”, “10ms”, “1h” into milliseconds.
resolve_definitions
Build a set of definitions, inlining submachine: references (SPEC §5.6.1) using a registry of all docs (def id -> raw machine). Returns one resolved Machine per input doc, in order, or the collected errors.

Type Aliases§

NodeId