lxy-9602 opened a new pull request, #27: URL: https://github.com/apache/paimon-cpp/pull/27
### Purpose No Linked issue. Introduce the core predicate framework: - `Predicate` — base interface for row-level filter predicates (`predicate.h`) - `LeafPredicate` — single-field predicate with typed function evaluation (`leaf_predicate.h/cpp`) - `CompoundPredicate` — And/Or composition of child predicates (`compound_predicate.h/cpp`) - `Function` / `FunctionVisitor` — base function hierarchy and visitor pattern (`function.h`, `function_visitor.h`) - `Literal` — type-erased value holder supporting all Paimon data types with comparison and serialization (`literal.h/cpp`) - `LiteralConverter` — Arrow array to Literal type conversion (`literal_converter.h/cpp`) - Function implementations: `LeafFunction`, `LeafUnaryFunction`, `NullFalseLeafBinaryFunction`, `StringLeafBinaryFunction`, `MultiLiteralsLeafFunction`, `CompoundFunction` - `LeafPredicateImpl` / `CompoundPredicateImpl` — internal predicate evaluation logic - `PredicateFilter` — row filtering via predicates ### Tests - `literal_test.cpp` — Literal value construction, comparison, and serialization for all data types - `literal_converter_test.cpp` — Arrow array to Literal conversion for primitive, string, decimal, and temporal types ### API and Format New public headers under `include/paimon/predicate/`. ### Documentation ### Generative AI tooling Migrate-by: Aone Copilot (Claude) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
