Bigraph.ExprExpressions and constraints for use in control parameters.
Raised when a type mismatch occurs during expression evaluation, e.g., applying arithmetic to incompatible value types.
A model error encountered while evaluating a control parameter expression at match/sim time (e.g. a value-dependent division by zero that a static check cannot foresee). Carries a user-facing message; handled in the frontend, which reports it and exits 1, so a model error never surfaces as an unhandled-exception crash.
val pp_vals :
Ppx_deriving_runtime.Format.formatter ->
vals ->
Ppx_deriving_runtime.unitval show_vals : vals -> Ppx_deriving_runtime.stringval vals_to_yojson : vals -> Yojson.Safe.tval vals_of_yojson : Yojson.Safe.t -> vals Ppx_deriving_yojson_runtime.error_orComparator for base values. throws TYPE_ERROR if value types cannot be coerced
Total "same value?" test. Unlike compare_vals, never raises: a cross-type pair (Str vs numeric) is a disagreement (false).
val exp_to_yojson : exp -> Yojson.Safe.tval exp_of_yojson : Yojson.Safe.t -> exp Ppx_deriving_yojson_runtime.error_orThe evaluation environment: the bracket hole, bound to the captured value inside a bracket guard and absent elsewhere (in a value expression, e.g. a reaction RHS [...], where using the hole is a model error), plus the named bindings (captures and global values).
Reduce an expression and coerce it to a float if possible
Reduce an expression and coerce it to a string if possible
val pp_cons :
Ppx_deriving_runtime.Format.formatter ->
cons ->
Ppx_deriving_runtime.unitval show_cons : cons -> Ppx_deriving_runtime.stringval cons_to_yojson : cons -> Yojson.Safe.tval cons_of_yojson : Yojson.Safe.t -> cons Ppx_deriving_yojson_runtime.error_orCheck if the given constraint is valid for a value v. string option is the name of the capture the constraint belongs to, or None for a nameless guard: inside its own guard the capture is always equal to the value it matches, so when present it is bound to v alongside the hole, which lets a labelled guard soundly refer to its own capture (e.g. x: $ = x). The hole is bound to v in every guard, so a nameless guard evaluates any $-based constraint identically.