1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//! Expression and predicate types for filtering Iceberg tables
//!
//! This module provides types for building filter predicates that can be used
//! for partition pruning and column statistics-based file filtering.
//!
//! # Example
//!
//! ```
//! use icepick::expr::{Predicate, Datum};
//!
//! // Simple equality filter
//! let filter = Predicate::eq("status", "active");
//!
//! // Range filter
//! let filter = Predicate::and([
//! Predicate::gt_eq("date", Datum::Date(19724)), // 2024-01-01
//! Predicate::lt("date", Datum::Date(19755)), // 2024-02-01
//! ]);
//!
//! // Complex filter with AND/OR
//! let filter = Predicate::or([
//! Predicate::eq("region", "us-west"),
//! Predicate::and([
//! Predicate::eq("region", "eu-central"),
//! Predicate::gt("priority", 5),
//! ]),
//! ]);
//! ```
pub
pub use evaluate_bounds;
pub use parse_filter;
pub use ;
pub use ;