Re-exports

pub use expr::Expr;
pub use expr_fn::col;

Modules

Expr module contains core type definition for Expr.

Expr fn module contains the functional definitions for expressions.

Structs

Logical representation of a user-defined aggregate function (UDAF) A UDAF is different from a UDF in that it is stateful across batches.

Logical representation of a UDF.

The Signature of a function defines its supported input types as well as its volatility.

The frame-spec determines which output rows are read by an aggregate window function.

Enums

Enum of all built-in aggregate functions

An aggregate function that is part of a built-in window function

Enum of all built-in scalar functions

Represents the result from an expression

Operators applied to expressions

A function’s type signature, which defines the function’s supported argument types.

A function’s volatility, which defines the functions eligibility for certain optimizations

There are five ways to describe starting and ending frame boundaries:

There are three frame types: ROWS, GROUPS, and RANGE. The frame type determines how the starting and ending boundaries of the frame are measured.

WindowFunction

Traits

An accumulator represents a stateful object that lives throughout the evaluation of multiple rows and generically accumulates values.

Trait for converting a type to a Literal literal expression.

Trait for converting a type to a literal timestamp

Functions

Create a literal expression

Create a literal timestamp expression

Type Definitions

the implementation of an aggregate function

null columnar values are implemented as a null array in order to pass batch num_rows

A function’s return type

This signature corresponds to which types an aggregator serializes its state, given its return datatype.