pub struct GroupSpec {
pub by: Vec<String>,
pub aggs: Vec<(String, Agg)>,
pub pre: Vec<(String, FExpr)>,
}Expand description
GROUP BY specification: grouping variables and result aggregates.
Fields§
§by: Vec<String>Variables to group by (empty = single group over all solutions).
aggs: Vec<(String, Agg)>(result_variable, aggregate) pairs.
pre: Vec<(String, FExpr)>Synthetic per-row columns computed before grouping — (var, expr) for
each aggregate whose argument is an expression rather than a bare variable
(e.g. SUM(?a * 2) lowers to a hidden __aggN = ?a * 2, then SUM(__aggN)).
Empty for the common case (aggregating a plain variable).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for GroupSpec
impl RefUnwindSafe for GroupSpec
impl Send for GroupSpec
impl Sync for GroupSpec
impl Unpin for GroupSpec
impl UnsafeUnpin for GroupSpec
impl UnwindSafe for GroupSpec
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more