pub trait AggOr<Rhs: AggregateKind>: AggregateKind {
type Output: AggregateKind;
}Expand description
Combine aggregate kinds: if either input is Agg, output is Agg.
This follows SQL’s aggregate propagation semantics: an expression
derived from any aggregate sub-expression is itself aggregate
(e.g. SUM(x) + 5 is aggregate, not scalar).
§Truth Table
| Left | Right | Output |
|---|---|---|
| Scalar | Scalar | Scalar |
| Scalar | Agg | Agg |
| Agg | Scalar | Agg |
| Agg | Agg | Agg |
Required Associated Types§
Sourcetype Output: AggregateKind
type Output: AggregateKind
The resulting aggregate kind.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".