Skip to main content

Module expr

Module expr 

Source
Expand description

References, expressions and predicates of registry rustev.exact/1: typing (compile phase e) and evaluation (spec 002, 3.4 and 3.8).

Structs§

Scope
Values visible while evaluating.
TyEnv
Types visible while typing an expression.

Enums§

Fault
Why evaluation produced no value; becomes the step’s unresolved reason.
Ref
A parsed reference.
StepTy
The type of a step’s result as expressions see it.

Functions§

base_ref
The dependency a reference names: input:<name> or step:<id> without any field path.
base_ref_v2
base_ref for a version 2 definition, whose step references may carry a field path.
eval_expr
eval_predicate
eval_ref
expr_refs
Every reference an expression or predicate reads, in reading order.
expr_structure
Structural checks of compile phase b: scales in range.
expr_uses_v2
Whether an expression uses a construct of rustev.exact/2 that a version 1 definition cannot carry (spec 032, 3.1.3).
fx
amount / rate(from) * rate(to), each step half-even at 10^-9, then rescaled half-even to scale (fx_convert@1).
predicate_refs
predicate_structure
predicate_uses_v2
Whether a predicate uses a construct of rustev.exact/2.
ref_ty
The type of a reference, or a kind mismatch.
split_item
A version 2 item path, with / as well as . separating fields.
split_step
A version 2 step reference’s id and field path.
type_expr
The static type of an expression (compile phase e). Values never convert silently: integer and decimal mix only through to_decimal.
type_predicate