Invalidates the cached checksum so the next call recomputes it.
Sets a callback that runs full argument-level invariant validation.
Injected by ArgumentEngine so the premise can delegate to the
argument-level validator.
A function returning the invariant validation result,
or undefined to clear.
Sets a callback that checks whether adding a variable-expression to a
premise would create a circular binding. Injected by ArgumentEngine
to enable cross-premise cycle detection. If not set, only the direct
check (within the premise itself) runs.
A function that returns true if adding the variable
to the premise would create a cycle, or undefined to clear.
Sets a callback that checks whether a premise-bound variable's target
premise has an empty expression tree. Injected by ArgumentEngine to
enable cross-premise validation. Used during validateEvaluability.
A function that returns true if the variable's bound
premise has no root expression, or undefined to clear.
Sets a callback invoked after every mutation, or undefined to
clear.
The mutation callback, or undefined to remove.
Sets a callback that returns the full set of variable IDs registered
in the argument. Injected by ArgumentEngine.
A function returning the set of registered variable
IDs, or undefined to clear.
Returns a serializable snapshot of the premise's owned state.
The premise engine snapshot.
Run invariant validation on this premise and its expression tree.
Premise snapshot and mutation callback lifecycle. Static fromSnapshot factory is class-level only.