Skip to main content

Module cel

Module cel 

Source
Expand description

Guard / action-value evaluation via the Common Expression Language (SPEC §6), backed by the cel-interpreter crate (cel-rust).

Determa State mandates CEL so a guard means the same thing in every runtime. This module is a thin adapter: it builds a CEL context from the Determa State scope (in-scope esvs

  • event.payload.* + the intrinsics id/parent/state), converts between Determa State’s Value and CEL values, and maps CEL runtime errors onto CelError (which the runtime treats as an action fault, SPEC §5.10). Boundary values stay canonical native/JSON (§5.1): every CEL result is normalized back to a Value.

Structs§

Env
A CEL environment: the bindings visible to a guard / action value (resolved in-scope esvs plus the event/id/parent intrinsics).

Enums§

CelError

Functions§

eval
Evaluate a CEL expression, returning its value as a canonical Determa State Value.
eval_bool
Evaluate a CEL expression as a boolean guard.