Expand description
Vortex’s expression language.
All expressions are serializable, and own their own wire format.
The implementation takes inspiration from Postgres and Apache Datafusion.
Re-exports§
pub use pruning::StatsCatalog;pub use analysis::*;
Modules§
- aliases
- analysis
- arbitrary
- display
- forms
- proto
- pruning
- stats
- test_
harness - transform
- A collection of transformations that can be applied to a
crate::expr::Expression. - traversal
- Datafusion inspired tree traversal logic.
Structs§
- Exact
Expr - An expression wrapper that performs pointer equality on child expressions.
- Expression
- A node in a Vortex expression tree.
Traits§
Functions§
- and
- Create a new
Binaryusing theAndoperator. - and_
collect - Collects a list of
anded values into a single expression using a balanced tree. - between
- Creates an expression that checks if values are between two bounds.
- cast
- Creates an expression that casts values to a target data type.
- checked_
add - Create a new
Binaryusing theAddoperator. - col
- Creates an expression that accesses a field from the root array.
- dynamic
- Creates a dynamic comparison expression.
- eq
- Create a new
Binaryusing theEqoperator. - fill_
null - Creates an expression that replaces null values with a fill value.
- get_
item - Creates an expression that extracts a named field from a struct expression.
- gt
- Create a new
Binaryusing theGtoperator. - gt_eq
- Create a new
Binaryusing theGteoperator. - ilike
- Creates a case-insensitive SQL ILIKE expression.
- is_null
- Creates an expression that checks for null values.
- is_root
- Return whether the expression is a root expression.
- like
- Creates a SQL LIKE expression.
- list_
contains - Creates an expression that checks if a value is contained in a list.
- lit
- Create a new
Literalexpression from a type that coerces toScalar. - lt
- Create a new
Binaryusing theLtoperator. - lt_eq
- Create a new
Binaryusing theLteoperator. - mask
- Creates a mask expression that applies the given boolean mask to the input array.
- merge
- Creates an expression that merges struct expressions into a single struct.
- merge_
opts - Creates a merge expression with explicit duplicate handling.
- not
- Creates an expression that logically inverts boolean values.
- not_eq
- Create a new
Binaryusing theNotEqoperator. - not_
ilike - Creates a negated case-insensitive SQL NOT ILIKE expression.
- not_
like - Creates a negated SQL NOT LIKE expression.
- or
- Create a new
Binaryusing theOroperator. - or_
collect - Collects a list of
ored values into a single expression using a balanced tree. - pack
- Creates an expression that packs values into a struct with named fields.
- root
- Creates an expression that references the root scope.
- select
- Creates an expression that selects (includes) specific fields from an array.
- select_
exclude - Creates an expression that excludes specific fields from an array.
- split_
conjunction - Splits top level and operations into separate expressions.
- zip_
expr - Creates a zip expression that conditionally selects between two arrays.