Trait expr::scalar::func::LazyUnaryFunc [−][src]
trait LazyUnaryFunc {
fn eval<'a>(
&'a self,
datums: &[Datum<'a>],
temp_storage: &'a RowArena,
a: &'a MirScalarExpr
) -> Result<Datum<'a>, EvalError>;
fn output_type(&self, input_type: ColumnType) -> ColumnType;
fn propagates_nulls(&self) -> bool;
fn introduces_nulls(&self) -> bool;
fn preserves_uniqueness(&self) -> bool;
}
Expand description
A description of an SQL unary function that has the ability to lazy evaluate its arguments
Required methods
fn eval<'a>(
&'a self,
datums: &[Datum<'a>],
temp_storage: &'a RowArena,
a: &'a MirScalarExpr
) -> Result<Datum<'a>, EvalError>
fn output_type(&self, input_type: ColumnType) -> ColumnType
fn output_type(&self, input_type: ColumnType) -> ColumnType
The output ColumnType of this function
fn propagates_nulls(&self) -> bool
fn propagates_nulls(&self) -> bool
Whether this function will produce NULL on NULL input
fn introduces_nulls(&self) -> bool
fn introduces_nulls(&self) -> bool
Whether this function will produce NULL on non-NULL input
fn preserves_uniqueness(&self) -> bool
fn preserves_uniqueness(&self) -> bool
Whether this function preserves uniqueness