Expand description
Expression evaluator — recursively evaluates an expression tree against a DataChunk.
This replaces the ad-hoc PhysicalFilter::evaluate_expression with a proper
expression evaluator that dispatches function calls through the scalar function
registry (Akar-function::evaluate_scalar), supporting:
- Variable: reads values from a DataChunk field by name
- Constant: returns a literal value
- BinaryOp: dispatches to arithmetic/comparison/boolean scalar functions
- UnaryOp: dispatches to NOT/negate scalar functions
- FunctionCall: resolves the function name in the registry and evaluates
- PropertyAccess: reads a property from a struct/object expression
- List/Map: evaluated via list_creation/map_creation scalar functions