This module provides DataFusion specific casting functions
that provide error handling. They are intended to “never fail”
but provide an error message rather than a panic, as the corresponding
kernels in arrow-rs such as as_boolean_array do.
Common Subexpression Elimination logic implemented in CSE can be controlled with
a CSEController, that defines how to eliminate common subtrees from a particular
TreeNode tree.
Floating point rounding mode utility library
TODO: Remove this custom implementation and the “libc” dependency when
floating-point rounding mode manipulation functions become available
in Rust.
Compares formatted output of a record batch with an expected
vector of strings, with the result of pretty formatting record
batches. This is a macro so errors appear on the correct line
Compares formatted output of a record batch with an expected
vector of strings in a way that order does not matter.
This is a macro so errors appear on the correct line
Downcast an Arrow Array to a concrete type, return an DataFusionError::Internal if the cast is
not possible. In normal usage of DataFusion the downcast should always succeed.
This object defines a functional dependence in the schema. A functional
dependence defines a relationship between determinant keys and dependent
columns. A determinant key is a column, or a set of columns, whose value
uniquely determines values of some other (dependent) columns. If two rows
have the same determinant key, dependent columns in these rows are
necessarily the same. If the determinant key is unique, the set of
dependent columns is equal to the entire schema and the determinant key can
serve as a primary key. Note that a primary key may “downgrade” into a
determinant key due to an operation such as a join, and this object is
used to track dependence relationships in such cases. For more information
on functional dependencies, see:
https://www.scaler.com/topics/dbms/functional-dependency-in-dbms/