|
runtime 1.0.0
Checked CEL programs, owned values, and reusable execution stacks
|
Receive and invoke callable values whose frozen bodies outlive their builders. Handles share code; they do not independently copy mutable callback captures. See Bind and receive callable results for complete signature and ownership rules.
Classes | |
| class | cel::callable |
| Owns a reference-semantic handle to frozen code and its complete declared signature. Copies share code, explicit callback references, and the same-carrier entry guard. There is no implicit lexical environment or shared invocation argument/result table. Exclusive access is required; recursive entry into the same carrier throws logic_error. Distinct carriers can nest on the caller's stack. Callback references stay caller-owned. Moves between distinct handles leave the source without code; assign a live handle before using source's borrowed accessors. Borrowed signatures and requirements remain valid while an unchanged live handle retains their code. Last ownership retires runtime-managed executable graphs without allocation or recursive descent, including callable literals and lazy bodies. Client destructors retain their costs. More... | |