Skip to main content

Module null

Module null 

Source
Expand description

The null datamodel (W3C SCXML B.1) and the registry helpers that make it always available.

Structs§

NullDatamodel
The null datamodel: no data, and only In('id') conditions. Every other condition, value expression, assignment, script and foreach is an evaluation error. Inline content (of <content>) is not an expression and is passed through as a string.
NullRegistry
A registry with only the null datamodel.
WithNull
Wraps a host registry so that null is always available.

Constants§

NULL_DATAMODEL
The name of the null datamodel.

Functions§

create_datamodel
Create the datamodel a chart names (null when it names none) from the host’s registry, or fail with StartError::UnsupportedDatamodel. null is available even when the registry does not list it.
create_datamodel_for
Create the datamodel for chart from the host’s registry through DatamodelRegistry::create_for, so a datamodel that checks charts statically gets the whole chart: StartError::ChartRefused when it refuses the chart, and otherwise as create_datamodel (null when the chart names none, null always available, StartError::UnsupportedDatamodel for an unregistered name).
parse_in_predicate
Parse In('id') or In("id") (surrounding whitespace allowed) and return id.
start_with_registry
Select the chart’s datamodel from the registry and start a session with it. Returns the outcome and the datamodel instance the session must keep using.