Module datafusion::physical_plan::functions[][src]

Declaration of built-in (scalar) functions. This module contains built-in functions’ enumeration and metadata.

Generally, a function has:

  • a signature

  • a return type, that is a function of the incoming argument’s types

  • the computation, that must accept each valid signature

  • Signature: see Signature

  • Return type: a function (arg_types) -> return_type. E.g. for sqrt, (f32) -> f32, (f64) -> f64.

This module also has a set of coercion rules to improve user experience: if an argument i32 is passed to a function that supports f64, it is coerced to f64.

Structs

ScalarFunctionExpr

Physical expression of a scalar function

Enums

BuiltinScalarFunction

Enum of all built-in scalar functions

Signature

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

Functions

create_physical_expr

Create a physical (function) expression. This function errors when args’ can’t be coerced to a valid argument type of the function.

make_scalar_function

decorates a function to handle ScalarValues by coverting them to arrays before calling the function and vice-versa after evaluation.

return_type

Returns the datatype of the scalar function

Type Definitions

ReturnTypeFunction

A function’s return type

ScalarFunctionImplementation

Scalar function