iceberg-cpp
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
iceberg::Evaluator Class Reference

Evaluates an Expression against data rows. More...

#include <evaluator.h>

Public Member Functions

Result< bool > Evaluate (const StructLike &row) const
 Evaluate the expression against a data row.
 

Static Public Member Functions

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.
 

Detailed Description

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.

Member Function Documentation

◆ Evaluate()

Result< bool > iceberg::Evaluator::Evaluate ( const StructLike row) const

Evaluate the expression against a data row.

Parameters
rowThe 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
schemaThe schema to bind against
unboundThe unbound expression to evaluate
case_sensitiveWhether field name matching is case-sensitive

The documentation for this class was generated from the following files: