Expand description
TBD: Currently, sql::func
handles matching arguments to their respective
built-in functions (for most built-in functions, at least).
Macrosยง
- builtins ๐
- Constructs builtin function map.
- catalog_
name_ ๐only - Functions using this macro should be transformed/planned away before reaching function selection code, but still need to be present in the catalog during planning.
- impl_
def ๐ - params ๐
- Provides shorthand for converting
Vec<ScalarType>
intoVec<ParamType>
. - privilege_
fn ๐ - Generates an (OID, OID, TEXT) SQL implementation for has_X_privilege style functions.
Structsยง
- Candidate
- Tracks candidate implementations.
- Func
Impl - Describes a single functionโs implementation.
- Func
Impl Catalog Details - Describes how each implementation should be represented in the catalog.
- Operation
- Builds an expression that evaluates a scalar function on the provided input expressions.
- Polymorphic
Solution ๐ - Represents a solution to a set of polymorphic constraints, expressed as the
params
of a function and the user-suppliedargs
. - Return
Type - Table
Func Plan
Enumsยง
- Func
- Func
Spec - A specifier for a function or an operator.
- Param
List - Describes possible types of function parameters.
- Param
Type - Describes parameter types.
- Polymorphic
Compat ๐Class
Staticsยง
- INFORMATION_
SCHEMA_ BUILTINS - MZ_
CATALOG_ BUILTINS - MZ_
INTERNAL_ BUILTINS - MZ_
UNSAFE_ BUILTINS - OP_
IMPLS - Correlates an operator with all of its implementations.
- PG_
CATALOG_ BUILTINS - Correlates a built-in function name to its implementations.
Functionsยง
- array_
to_ ๐string - coerce_
args_ ๐to_ types - current_
settings ๐ - digest ๐
- experimental_
sql_ ๐impl_ table_ func - find_
match ๐ - Finds an exact match based on the arguments, or, if no exact match, finds the best match available. Patterned after PostgreSQLโs type conversion matching algorithm.
- resolve_
op - Resolves the operator to a set of function implementations.
- select_
impl - Selects the best implementation given the provided
args
using a process similar to PostgreSQLโs parser, and returns theScalarExpr
to invoke that function. - sql_
impl - Backing implementation for sql_impl_func and sql_impl_cast. See those functions for details.
- sql_
impl_ ๐func - sql_
impl_ ๐table_ func - sql_
impl_ ๐table_ func_ inner