pub trait ExprBuiltins: Sized {
// Required methods
fn cast(&self, dtype: DType) -> VortexResult<Expression>;
fn get_item(
&self,
field_name: impl Into<FieldName>,
) -> VortexResult<Expression>;
fn is_null(&self) -> VortexResult<Expression>;
fn mask(&self, mask: Expression) -> VortexResult<Expression>;
fn not(&self) -> VortexResult<Expression>;
}Expand description
A collection of built-in scalar functions that can be applied to expressions or arrays.
Required Methods§
Sourcefn cast(&self, dtype: DType) -> VortexResult<Expression>
fn cast(&self, dtype: DType) -> VortexResult<Expression>
Cast to the given data type.
Sourcefn get_item(&self, field_name: impl Into<FieldName>) -> VortexResult<Expression>
fn get_item(&self, field_name: impl Into<FieldName>) -> VortexResult<Expression>
Get item by field name (for struct types).
Sourcefn is_null(&self) -> VortexResult<Expression>
fn is_null(&self) -> VortexResult<Expression>
Is null check.
Sourcefn mask(&self, mask: Expression) -> VortexResult<Expression>
fn mask(&self, mask: Expression) -> VortexResult<Expression>
Mask the expression using the given boolean mask. The resulting expression’s validity is the intersection of the original expression’s validity.
Sourcefn not(&self) -> VortexResult<Expression>
fn not(&self) -> VortexResult<Expression>
Boolean negation.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.