|
parser 1.0.0
UTF-8 CEL expression compilation and checked library extensions
|
Compile complete UTF-8 string views into owned, reusable runtime programs. See Compile and reuse expressions for typed and owning results, stack reuse, source lifetime, and execution examples.
Classes | |
| class | cel::parser |
| Owns lookup state and compiles CEL expressions into reusable checked programs. Each successful call returns a program owning its values, descriptors, and emitted runtime callbacks; the source and parser need not survive the program. References inside client captures remain client-owned and must outlive their uses. Custom scope callbacks and emitters follow their own code-retention contracts. Precondition: clients provide exclusive access across threads, including during emitters. Recursive entry throws std::logic_error before changing cursor or lookup state. Failed parsing retires temporary scopes; subsequent parses may reuse the parser. A selected client emitter's own failure leaves its lookup state subject to its contract. Compilation invokes lookup scopes and emitters, not the emitted runtime operations. Copying and moving are unavailable. Compile and execute a program independently of its parser: More... | |