Skip to main content

BinaryAggregate

Trait BinaryAggregate 

Source
pub trait BinaryAggregate:
    Debug
    + Copy
    + Sync
    + Send
    + Sized
    + 'static {
    type Input1: ScalarStorage;
    type Input2: ScalarStorage;
    type Output: MutableScalarStorage;
    type BindState: Sync + Send;
    type GroupState: for<'a> AggregateState<(&'a <Self::Input1 as ScalarStorage>::StorageType, &'a <Self::Input2 as ScalarStorage>::StorageType), <Self::Output as ScalarStorage>::StorageType, BindState = Self::BindState>;

    // Required methods
    fn bind(
        &self,
        inputs: Vec<Expression>,
    ) -> Result<BindState<Self::BindState>>;
    fn new_aggregate_state(state: &Self::BindState) -> Self::GroupState;
}

Required Associated Types§

Required Methods§

Source

fn bind(&self, inputs: Vec<Expression>) -> Result<BindState<Self::BindState>>

Source

fn new_aggregate_state(state: &Self::BindState) -> Self::GroupState

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl BinaryAggregate for ApproxQuantile

Source§

impl BinaryAggregate for Corr

Source§

impl BinaryAggregate for CovarPop

Source§

impl BinaryAggregate for CovarSamp

Source§

impl BinaryAggregate for RegrAvgX

Source§

impl BinaryAggregate for RegrAvgY

Source§

impl BinaryAggregate for RegrCount

Source§

impl BinaryAggregate for RegrR2

Source§

impl BinaryAggregate for RegrSlope

Source§

impl BinaryAggregate for StringAgg