Evaluates an Expression against data rows.
More...
#include <evaluator.h>
|
| Result< bool > | Evaluate (const StructLike &row) const |
| | Evaluate the expression against a data row.
|
| |
|
| static Result< std::unique_ptr< Evaluator > > | Make (const Schema &schema, std::shared_ptr< Expression > unbound, bool case_sensitive=true) |
| | Make an evaluator for an unbound expression.
|
| |
Evaluates an Expression against data rows.
This class evaluates bound expressions against StructLike data rows to determine if the row matches the expression criteria. The evaluator binds unbound expressions to a schema on construction and then can be used to evaluate multiple data rows.
- Note
- : The evaluator is thread-safe.
◆ Evaluate()
| Result< bool > iceberg::Evaluator::Evaluate |
( |
const StructLike & |
row | ) |
const |
Evaluate the expression against a data row.
- Parameters
-
| row | The data row to evaluate |
- Returns
- true if the row matches the expression, false otherwise, or error
◆ Make()
| Result< std::unique_ptr< Evaluator > > iceberg::Evaluator::Make |
( |
const Schema & |
schema, |
|
|
std::shared_ptr< Expression > |
unbound, |
|
|
bool |
case_sensitive = true |
|
) |
| |
|
static |
Make an evaluator for an unbound expression.
- Parameters
-
| schema | The schema to bind against |
| unbound | The unbound expression to evaluate |
| case_sensitive | Whether field name matching is case-sensitive |
The documentation for this class was generated from the following files:
- iceberg/expression/evaluator.h
- iceberg/expression/evaluator.cc