pub struct GroupByOperation<K> { /* private fields */ }Trait Implementations§
Source§impl<K: Clone> Clone for GroupByOperation<K>
impl<K: Clone> Clone for GroupByOperation<K>
Source§fn clone(&self) -> GroupByOperation<K>
fn clone(&self) -> GroupByOperation<K>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<K> Explain for GroupByOperation<K>where
K: Explain,
impl<K> Explain for GroupByOperation<K>where
K: Explain,
fn describe<'__explain>( &'__explain self, formatter: &mut ExplainFormatter<'__explain, '_>, ) -> Result
Source§impl<K> Labeled for GroupByOperation<K>where
K: Explain,
impl<K> Labeled for GroupByOperation<K>where
K: Explain,
Source§impl<I, V, K, C> LaneKernel<Indexed<I, V>, C> for GroupByOperation<K>where
I: IndexDomain,
V: ValueDomain,
K: ArgumentSource<Keyed<I>>,
K::ValueDomain: GroupingValue,
C: PartitionArity<Indexed<I, V>>,
impl<I, V, K, C> LaneKernel<Indexed<I, V>, C> for GroupByOperation<K>where
I: IndexDomain,
V: ValueDomain,
K: ArgumentSource<Keyed<I>>,
K::ValueDomain: GroupingValue,
C: PartitionArity<Indexed<I, V>>,
type Output = GroupOperand<I, <<K as SourceDomain>::ValueDomain as GroupingValue>::Key, OperandHandle<Indexed<I, V>, C>>
fn execute<'a>( _graphrecord: &'a GraphRecord, values: KeyedStream<'a, I, V, C>, prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>
fn estimate(&self, input: Estimate, stats: &Stats<'_>) -> Estimate
Source§impl<K> Operation for GroupByOperation<K>
impl<K> Operation for GroupByOperation<K>
Source§impl<K> OperationInputs for GroupByOperation<K>where
K: PlanIdentity + PlanInputs + 'static,
impl<K> OperationInputs for GroupByOperation<K>where
K: PlanIdentity + PlanInputs + 'static,
type Inputs<'__inputs, __Primary: '__inputs> = (&'__inputs __Primary, &'__inputs K)
fn inputs<'__inputs, __Primary: '__inputs>( &'__inputs self, primary: &'__inputs __Primary, ) -> Self::Inputs<'__inputs, __Primary>
Source§impl<K> OptimizerHints for GroupByOperation<K>
impl<K> OptimizerHints for GroupByOperation<K>
fn commutes_with_filter(&self) -> bool
fn allows_limit_pushdown(&self) -> bool
fn is_volatile(&self) -> bool
fn empty_rule(&self) -> EmptyRule
Source§impl<K> PlanIdentity for GroupByOperation<K>where
K: PlanIdentity,
impl<K> PlanIdentity for GroupByOperation<K>where
K: PlanIdentity,
fn identity_eq(&self, other: &Self) -> bool
fn identity_hash<__Hasher: Hasher>(&self, state: &mut __Hasher)
Source§impl<K> PlanInputs for GroupByOperation<K>where
K: PlanInputs,
impl<K> PlanInputs for GroupByOperation<K>where
K: PlanInputs,
Source§impl<K: Prepare> Prepare for GroupByOperation<K>
impl<K: Prepare> Prepare for GroupByOperation<K>
type Prepared<'a> = <K as Prepare>::Prepared<'a> where Self: 'a
fn prepare<'a>( &'a self, graphrecord: &'a GraphRecord, cache: &'a EvaluationCache<'a>, ) -> QueryResult<Self::Prepared<'a>>
Auto Trait Implementations§
impl<K> Freeze for GroupByOperation<K>where
K: Freeze,
impl<K> RefUnwindSafe for GroupByOperation<K>where
K: RefUnwindSafe,
impl<K> Send for GroupByOperation<K>where
K: Send,
impl<K> Sync for GroupByOperation<K>where
K: Sync,
impl<K> Unpin for GroupByOperation<K>where
K: Unpin,
impl<K> UnsafeUnpin for GroupByOperation<K>where
K: UnsafeUnpin,
impl<K> UnwindSafe for GroupByOperation<K>where
K: UnwindSafe,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<S, T> ExpandTo<T> for S
impl<S, T> ExpandTo<T> for S
type ReturnOperand = <T as Apply<ExpandToOperation<S>>>::Output
fn expand_to(&self, template: &T) -> <S as ExpandTo<T>>::ReturnOperand
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more