Skip to main content

AggregateKind

Trait AggregateKind 

Source
pub trait AggregateKind:
    Sealed
    + Copy
    + Default
    + 'static {
    type Or<Rhs: AggregateKind>: AggregateKind;
    type Status;
}
Expand description

Type-level marker saying whether an expression is an aggregate.

Implemented only by Scalar and Agg. Query builders use it to check that a SELECT list does not mix aggregates and plain columns without a GROUP BY.

Required Associated Types§

Source

type Or<Rhs: AggregateKind>: AggregateKind

Aggregate propagation: an expression over any aggregate is itself aggregate (SUM(x) + 5).

SelfRhsOr
ScalarScalarScalar
ScalarAggAgg
Agg_Agg
Source

type Status

The SELECT-list status of a single expression of this kind (AllScalar or AllAgg).

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementors§