You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🚀 Refactored evaluator & type-checker to share operator declarations and speed up performance
💥 AST nodes now encapsulate their evaluation/type-check logic and expose richer metadata.
🐛 Fix type checking of arguments of receiver calls when the receiver uses type dyn
💥 Breaking Change
In case anybody accessed the .ast of the .parse(expression) call or .node property on error instances, that code now needs adjustments. ast.toOldStructure() can be used to generate the old array based structure.
🐛 Improve type declarations of ternaries to correctly support optional types and also mixed types by find the least granular common type using type.unify(registry, otherType) (38f4708)
🐛 Teach optional.or() to accept only other optionals and short-circuit evaluation so expensive fallback expressions aren’t executed unnecessarily. (ad0916f)
👷 Update type-checker call paths to use the new cached candidate objects and improved error messaging (found no matching overload…).
🎁 Add cel.bind(var, value, expr) macro to bind a value to an identifier within an expression. (e7b99d2)