Skip to main content

OperandHandle

Struct OperandHandle 

Source
pub struct OperandHandle<S: ElementShape, C: Arity> { /* private fields */ }

Trait Implementations§

Source§

impl<S, C, P> Apply<P, Element> for OperandHandle<S, C>

Source§

type Output = OperandHandle<<P as ElementKernel<S>>::OutShape, <<P as ElementKernel<S>>::Emission as ElementEmission>::OutArity<C>>

Source§

fn apply<'a>( graphrecord: &'a GraphRecord, values: Self::ReturnValue<'a>, prepared: P::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>
where Self: 'a,

Source§

fn estimate(operation: &P, input: Estimate, stats: &Stats<'_>) -> Estimate

Source§

impl<S: ElementShape, C: Arity, P: LaneKernel<S, C>> Apply<P, Lane> for OperandHandle<S, C>

Source§

type Output = <P as LaneKernel<S, C>>::Output

Source§

fn apply<'a>( graphrecord: &'a GraphRecord, values: Self::ReturnValue<'a>, prepared: P::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>
where Self: 'a,

Source§

fn estimate(operation: &P, input: Estimate, stats: &Stats<'_>) -> Estimate

Source§

impl<S: ElementShape, C: AlignableArity<S, A>, A: Alignment> ArgumentSource<A> for OperandHandle<S, C>

Source§

type Retention = <C as AlignableArity<S, A>>::Retention

Source§

fn lookup<'a, 'prepared>( prepared: &'prepared Self::Prepared<'a>, address: &A::Address<'a>, ) -> Lookup<'prepared, QueryResult<<S::ValueDomain as ValueDomain>::Value<'a>>>
where Self: 'a,

Source§

fn resolve<'a>( prepared: &Self::Prepared<'a>, address: &A::Address<'a>, label: &'static str, ) -> <Self::Retention as ElementEmission>::Step<QueryResult<V::Value<'a>>>
where Self: 'a,

Source§

impl<S, C, M> BitAnd<M> for OperandHandle<S, C>
where S: ElementShape, C: Arity, Self: And<M>,

Source§

type Output = <OperandHandle<S, C> as And<M>>::ReturnOperand

The resulting type after applying the & operator.
Source§

fn bitand(self, rhs: M) -> Self::Output

Performs the & operation. Read more
Source§

impl<S, C, M> BitOr<M> for OperandHandle<S, C>
where S: ElementShape, C: Arity, Self: Or<M>,

Source§

type Output = <OperandHandle<S, C> as Or<M>>::ReturnOperand

The resulting type after applying the | operator.
Source§

fn bitor(self, rhs: M) -> Self::Output

Performs the | operation. Read more
Source§

impl<S, C, M> BitXor<M> for OperandHandle<S, C>
where S: ElementShape, C: Arity, Self: ExclusiveOr<M>,

Source§

type Output = <OperandHandle<S, C> as ExclusiveOr<M>>::ReturnOperand

The resulting type after applying the ^ operator.
Source§

fn bitxor(self, rhs: M) -> Self::Output

Performs the ^ operation. Read more
Source§

impl<S: CacheableShape, C: CacheableArity<S>> CacheableOperand for OperandHandle<S, C>

Source§

type Cached = <C as CacheableArity<S>>::Cached

Source§

fn into_cached(values: Self::ReturnValue<'_>) -> Self::Cached

Source§

fn from_cached(cached: &Self::Cached) -> Self::ReturnValue<'_>

Source§

impl<S: ElementShape, C: Arity> Clone for OperandHandle<S, C>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<S: ElementShape, C: Arity> Estimated for OperandHandle<S, C>

Source§

fn estimate(&self, stats: &Stats<'_>) -> Estimate

Source§

impl<S: ElementShape, C: Arity> EvaluateOperand for OperandHandle<S, C>

Source§

type ReturnValue<'a> = <C as Arity>::Container<'a, <S as ElementShape>::Element<'a>>

Source§

fn evaluate<'a>( &'a self, graphrecord: &'a GraphRecord, cache: &'a EvaluationCache<'a>, ) -> QueryResult<Self::ReturnValue<'a>>

Source§

impl<M: IndexDomain, K: GroupKey, V: BareValueDomain, C: PartitionArity<Bare<V>>> GroupKernel<M, K, OperandHandle<Bare<V>, C>> for UngroupOperation

Source§

type Output = OperandHandle<Bare<V>, Multiple<Unordered>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Bare<V>, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, V: BareValueDomain> GroupKernel<M, K, OperandHandle<Bare<V>, Definite>> for BroadcastOperation

Source§

type Output = OperandHandle<Indexed<M, V>, Multiple<Unordered>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Bare<V>, Definite>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M, K, V, A> GroupKernel<M, K, OperandHandle<Bare<V>, Definite>> for BroadcastViaOperation<A>

Source§

type Output = OperandHandle<Indexed<<A as IndexedElementSource>::IndexDomain, V>, <A as IndexedElementSource>::Arity>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Bare<V>, Definite>>, prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, V: BareValueDomain> GroupKernel<M, K, OperandHandle<Bare<V>, Definite>> for UngroupKeyedOperation

Source§

type Output = OperandHandle<Indexed<K, V>, Multiple<Unordered>>

Source§

fn execute<'a>( graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Bare<V>, Definite>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, V: BareValueDomain> GroupKernel<M, K, OperandHandle<Bare<V>, Single>> for BroadcastOperation

Source§

type Output = OperandHandle<Indexed<M, V>, Multiple<Unordered>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Bare<V>, Single>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M, K, V, A> GroupKernel<M, K, OperandHandle<Bare<V>, Single>> for BroadcastViaOperation<A>

Source§

type Output = OperandHandle<Indexed<<A as IndexedElementSource>::IndexDomain, V>, <A as IndexedElementSource>::Arity>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Bare<V>, Single>>, prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, V: BareValueDomain> GroupKernel<M, K, OperandHandle<Bare<V>, Single>> for UngroupKeyedOperation

Source§

type Output = OperandHandle<Indexed<K, V>, Multiple<Unordered>>

Source§

fn execute<'a>( graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Bare<V>, Single>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, I: IndexDomain, V: ValueDomain, C: PartitionArity<Indexed<I, V>>> GroupKernel<M, K, OperandHandle<Indexed<I, V>, C>> for UngroupOperation

Source§

type Output = OperandHandle<Indexed<I, V>, Multiple<Unordered>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Indexed<I, V>, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, I: IndexDomain, V: ValueDomain> GroupKernel<M, K, OperandHandle<Indexed<I, V>, Definite>> for BroadcastOperation

Source§

type Output = OperandHandle<Indexed<M, V>, Multiple<Unordered>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Indexed<I, V>, Definite>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, I: IndexDomain, V: ValueDomain> GroupKernel<M, K, OperandHandle<Indexed<I, V>, Definite>> for UngroupKeyedOperation

Source§

type Output = OperandHandle<Indexed<K, V>, Multiple<Unordered>>

Source§

fn execute<'a>( graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Indexed<I, V>, Definite>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, I: IndexDomain, V: ValueDomain> GroupKernel<M, K, OperandHandle<Indexed<I, V>, Single>> for BroadcastOperation

Source§

type Output = OperandHandle<Indexed<M, V>, Multiple<Unordered>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Indexed<I, V>, Single>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, I: IndexDomain, V: ValueDomain> GroupKernel<M, K, OperandHandle<Indexed<I, V>, Single>> for UngroupKeyedOperation

Source§

type Output = OperandHandle<Indexed<K, V>, Multiple<Unordered>>

Source§

fn execute<'a>( graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Indexed<I, V>, Single>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M, K, J, V, A> GroupKernel<M, K, OperandHandle<Indexed<J, V>, Definite>> for BroadcastViaOperation<A>

Source§

type Output = OperandHandle<Indexed<<A as IndexedElementSource>::IndexDomain, V>, <A as IndexedElementSource>::Arity>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Indexed<J, V>, Definite>>, prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, stats: &Stats<'_>) -> Estimate

Source§

impl<M, K, J, V, A> GroupKernel<M, K, OperandHandle<Indexed<J, V>, Single>> for BroadcastViaOperation<A>

Source§

type Output = OperandHandle<Indexed<<A as IndexedElementSource>::IndexDomain, V>, <A as IndexedElementSource>::Arity>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<Indexed<J, V>, Single>>, prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: BucketFailureArity<S>> GroupKernel<M, K, OperandHandle<S, C>> for BucketErrorsOperation

Source§

type Output = OperandHandle<Indexed<K, FailureValue>, Multiple<Unordered>>

Source§

fn execute<'a>( graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: Arity> GroupKernel<M, K, OperandHandle<S, C>> for KeyErrorsOperation

Source§

type Output = OperandHandle<Indexed<M, FailureValue>, Multiple<Unordered>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: Arity> GroupKernel<M, K, OperandHandle<S, C>> for KeysOperation

Source§

type Output = OperandHandle<Indexed<K, Unit>, Multiple<Unordered>>

Source§

fn execute<'a>( graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: BucketFailureArity<S>> GroupKernel<M, K, OperandHandle<S, C>> for DropBucketErrors

Source§

type Output = GroupOperand<M, K, OperandHandle<S, C>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: BucketFailureArity<S>, D: Diagnostic> GroupKernel<M, K, OperandHandle<S, C>> for DropBucketErrorsOf<D>

Source§

type Output = GroupOperand<M, K, OperandHandle<S, C>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: BucketFailureArity<S>, G: ErrorGroup> GroupKernel<M, K, OperandHandle<S, C>> for DropBucketErrorsIn<G>

Source§

type Output = GroupOperand<M, K, OperandHandle<S, C>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: BucketFailureArity<S>, E: Error + 'static> GroupKernel<M, K, OperandHandle<S, C>> for DropBucketErrorsWithCause<E>

Source§

type Output = GroupOperand<M, K, OperandHandle<S, C>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: BucketFailureArity<S>> GroupKernel<M, K, OperandHandle<S, C>> for RaiseBucketErrors

Source§

type Output = GroupOperand<M, K, OperandHandle<S, C>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: BucketFailureArity<S>, D: Diagnostic> GroupKernel<M, K, OperandHandle<S, C>> for RaiseBucketErrorsOf<D>

Source§

type Output = GroupOperand<M, K, OperandHandle<S, C>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: BucketFailureArity<S>, G: ErrorGroup> GroupKernel<M, K, OperandHandle<S, C>> for RaiseBucketErrorsIn<G>

Source§

type Output = GroupOperand<M, K, OperandHandle<S, C>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<M: IndexDomain, K: GroupKey, S: ElementShape, C: BucketFailureArity<S>, E: Error + 'static> GroupKernel<M, K, OperandHandle<S, C>> for RaiseBucketErrorsWithCause<E>

Source§

type Output = GroupOperand<M, K, OperandHandle<S, C>>

Source§

fn execute<'a>( _graphrecord: &'a GraphRecord, partition: Partition<'a, M, K, OperandHandle<S, C>>, _prepared: Self::Prepared<'a>, ) -> QueryResult<<Self::Output as EvaluateOperand>::ReturnValue<'a>>

Source§

fn estimate(&self, input: Estimate, _stats: &Stats<'_>) -> Estimate

Source§

impl<I: IndexDomain, V: ValueDomain, C: EnumerableArity<Indexed<I, V>, I>> IndexedElementSource for OperandHandle<Indexed<I, V>, C>

Source§

type Arity = C

Source§

type IndexDomain = I

Source§

fn elements<'a>( prepared: Self::Prepared<'a>, ) -> C::Container<'a, (I::Index<'a>, QueryResult<<V as ValueDomain>::Value<'a>>)>
where Self: 'a,

Source§

impl<S: ReturnShape, C: Arity> IntoReturn for OperandHandle<S, C>

Source§

type Return<'a> = <C as Arity>::Container<'a, <S as ReturnShape>::ReturnElement<'a>> where Self: 'a

Source§

fn into_return<'a>(values: Self::ReturnValue<'a>) -> Self::Return<'a>
where Self: 'a,

Source§

impl<A: Alignment, V: BareValueDomain> MaybeAbsent<A> for OperandHandle<Bare<V>, Single>

Source§

fn on_missing<P>(self, policy: P) -> WithMissing<A, Self, P>
where Self: Sized, P: MissingPolicy<A, Self>,

Source§

impl<I: IndexDomain, V: ValueDomain, O: OrderState> MaybeAbsent<Keyed<I>> for OperandHandle<Indexed<I, V>, Multiple<O>>

Source§

fn on_missing<P>(self, policy: P) -> WithMissing<A, Self, P>
where Self: Sized, P: MissingPolicy<A, Self>,

Source§

impl<S, C> Not for OperandHandle<S, C>
where S: ElementShape, C: Arity, Self: Not,

Source§

type Output = <OperandHandle<S, C> as Not>::ReturnOperand

The resulting type after applying the ! operator.
Source§

fn not(self) -> Self::Output

Performs the unary ! operation. Read more
Source§

impl<S: ElementShape, C: Arity> Operand for OperandHandle<S, C>

Source§

fn context(&self) -> &dyn OperandContext<Self>

Source§

fn as_plan_node(&self) -> &dyn PlanNode

Source§

fn from_context(context: Arc<dyn OperandContext<Self>>) -> Self

Source§

fn new<C: OperandContext<Self>>(context: C) -> Self

Source§

fn explain(&self) -> Explanation<'_>

Source§

impl<S: ElementShape, C: PreparedArity<S>> Prepare for OperandHandle<S, C>

Source§

type Prepared<'a> = <C as PreparedArity<S>>::Prepared<'a> where Self: 'a

Source§

fn prepare<'a>( &'a self, graphrecord: &'a GraphRecord, cache: &'a EvaluationCache<'a>, ) -> QueryResult<Self::Prepared<'a>>

Source§

impl<'a, S: ReturnShape, C: Arity> ReturnOperand<'a> for OperandHandle<S, C>

Source§

type ReturnValue = <OperandHandle<S, C> as IntoReturn>::Return<'a>

Source§

fn evaluate( &'a self, graphrecord: &'a GraphRecord, cache: &'a EvaluationCache<'a>, ) -> QueryResult<Self::ReturnValue>

Source§

fn optimize( self, optimizer: &Optimizer, stats: &Stats<'_>, ) -> (Self, OptimizationReport)

Source§

fn fmt_plan(&self, formatter: &mut Formatter<'_>) -> Result

Source§

impl<S: ElementShape, C: SetArity<S>> SetSource<<S as ElementShape>::ValueDomain> for OperandHandle<S, C>

Source§

fn set<'a>( prepared: Self::Prepared<'a>, ) -> QueryResult<GrHashSet<<S::ValueDomain as ValueDomain>::Value<'a>>>
where Self: 'a, <S::ValueDomain as ValueDomain>::Value<'a>: Eq + Hash,

Source§

impl<S: ElementShape, C: Arity> SourceDomain for OperandHandle<S, C>

Auto Trait Implementations§

§

impl<S, C> !RefUnwindSafe for OperandHandle<S, C>

§

impl<S, C> !UnwindSafe for OperandHandle<S, C>

§

impl<S, C> Freeze for OperandHandle<S, C>

§

impl<S, C> Send for OperandHandle<S, C>

§

impl<S, C> Sync for OperandHandle<S, C>

§

impl<S, C> Unpin for OperandHandle<S, C>

§

impl<S, C> UnsafeUnpin for OperandHandle<S, C>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<O> Cache for O

Source§

fn cache(&self) -> O

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<S, T> ExpandTo<T> for S

Source§

type ReturnOperand = <T as Apply<ExpandToOperation<S>>>::Output

Source§

fn expand_to(&self, template: &T) -> <S as ExpandTo<T>>::ReturnOperand

Source§

impl<O> Explain for O
where O: Operand,

Source§

fn describe<'a>( &'a self, formatter: &mut ExplainFormatter<'a, '_>, ) -> Result<(), Error>

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<O> HasErrorCause for O
where O: Operand,

Source§

type ReturnOperand<C: Error + 'static> = <O as Apply<HasErrorCauseOperation<C>>>::Output where O: Apply<HasErrorCauseOperation<C>>

Source§

fn has_cause<C>(&self) -> <O as HasErrorCause>::ReturnOperand<C>
where C: Error + 'static, O: Apply<HasErrorCauseOperation<C>>,

Source§

impl<O> InErrorGroup for O
where O: Operand,

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<A, V, S> IntoArgument<A, V> for S
where A: Alignment, V: ValueDomain, S: ArgumentSource<A, V>,

Source§

fn into_argument(self) -> Argument<A, V, <S as ArgumentSource<A, V>>::Retention>

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<O> IsErrorKind for O
where O: Operand,

Source§

impl<T> Key for T
where T: Clone,

Source§

fn align() -> usize

The alignment necessary for the key. Must return a power of two.
Source§

fn size(&self) -> usize

The size of the key in bytes.
Source§

unsafe fn init(&self, ptr: *mut u8)

Initialize the key in the given memory location. Read more
Source§

unsafe fn get<'a>(ptr: *const u8) -> &'a T

Get a reference to the key from the given memory location. Read more
Source§

unsafe fn drop_in_place(ptr: *mut u8)

Drop the key in place. Read more
Source§

impl<O> OnBucketError for O
where O: Operand,

Source§

fn on_bucket_error<A>(&self, policy: A) -> <A as BucketErrorPolicy<O>>::Output
where A: BucketErrorPolicy<O>,

Source§

impl<O, A> OnBucketErrorIn<A> for O
where O: Operand,

Source§

type ReturnOperand<G: ErrorGroup> = <A as BucketErrorPolicyIn<O, G>>::Output where A: BucketErrorPolicyIn<O, G>

Source§

fn on_bucket_error_in<G>( &self, policy: A, ) -> <O as OnBucketErrorIn<A>>::ReturnOperand<G>
where G: ErrorGroup, A: BucketErrorPolicyIn<O, G>,

Source§

impl<O, A> OnBucketErrorOf<A> for O
where O: Operand,

Source§

type ReturnOperand<D: Diagnostic> = <A as BucketErrorPolicyOf<O, D>>::Output where A: BucketErrorPolicyOf<O, D>

Source§

fn on_bucket_error_of<D>( &self, policy: A, ) -> <O as OnBucketErrorOf<A>>::ReturnOperand<D>
where D: Diagnostic, A: BucketErrorPolicyOf<O, D>,

Source§

impl<O, A> OnBucketErrorWithCause<A> for O
where O: Operand,

Source§

type ReturnOperand<C: Error + 'static> = <A as BucketErrorPolicyWithCause<O, C>>::Output where A: BucketErrorPolicyWithCause<O, C>

Source§

fn on_bucket_error_with_cause<C>( &self, policy: A, ) -> <O as OnBucketErrorWithCause<A>>::ReturnOperand<C>
where C: Error + 'static, A: BucketErrorPolicyWithCause<O, C>,

Source§

impl<O> OnError for O
where O: Operand,

Source§

fn on_error<A>(&self, policy: A) -> <A as ErrorPolicy<O>>::Output
where A: ErrorPolicy<O>,

Source§

impl<O, A> OnErrorIn<A> for O
where O: Operand,

Source§

type ReturnOperand<G: ErrorGroup> = <A as ErrorPolicyIn<O, G>>::Output where A: ErrorPolicyIn<O, G>

Source§

fn on_error_in<G>(&self, policy: A) -> <O as OnErrorIn<A>>::ReturnOperand<G>
where G: ErrorGroup, A: ErrorPolicyIn<O, G>,

Source§

impl<O, A> OnErrorOf<A> for O
where O: Operand,

Source§

type ReturnOperand<D: Diagnostic> = <A as ErrorPolicyOf<O, D>>::Output where A: ErrorPolicyOf<O, D>

Source§

fn on_error_of<D>(&self, policy: A) -> <O as OnErrorOf<A>>::ReturnOperand<D>
where D: Diagnostic, A: ErrorPolicyOf<O, D>,

Source§

impl<O, A> OnErrorWithCause<A> for O
where O: Operand,

Source§

type ReturnOperand<C: Error + 'static> = <A as ErrorPolicyWithCause<O, C>>::Output where A: ErrorPolicyWithCause<O, C>

Source§

fn on_error_with_cause<C>( &self, policy: A, ) -> <O as OnErrorWithCause<A>>::ReturnOperand<C>
where C: Error + 'static, A: ErrorPolicyWithCause<O, C>,

Source§

impl<O> OnKeyError for O
where O: Operand,

Source§

fn on_key_error<A>(&self, policy: A) -> <A as KeyErrorPolicy<O>>::Output
where A: KeyErrorPolicy<O>,

Source§

impl<O, A> OnKeyErrorIn<A> for O
where O: Operand,

Source§

type ReturnOperand<G: ErrorGroup> = <A as KeyErrorPolicyIn<O, G>>::Output where A: KeyErrorPolicyIn<O, G>

Source§

fn on_key_error_in<G>( &self, policy: A, ) -> <O as OnKeyErrorIn<A>>::ReturnOperand<G>
where G: ErrorGroup, A: KeyErrorPolicyIn<O, G>,

Source§

impl<O, A> OnKeyErrorOf<A> for O
where O: Operand,

Source§

type ReturnOperand<D: Diagnostic> = <A as KeyErrorPolicyOf<O, D>>::Output where A: KeyErrorPolicyOf<O, D>

Source§

fn on_key_error_of<D>( &self, policy: A, ) -> <O as OnKeyErrorOf<A>>::ReturnOperand<D>
where D: Diagnostic, A: KeyErrorPolicyOf<O, D>,

Source§

impl<O, A> OnKeyErrorWithCause<A> for O
where O: Operand,

Source§

type ReturnOperand<C: Error + 'static> = <A as KeyErrorPolicyWithCause<O, C>>::Output where A: KeyErrorPolicyWithCause<O, C>

Source§

fn on_key_error_with_cause<C>( &self, policy: A, ) -> <O as OnKeyErrorWithCause<A>>::ReturnOperand<C>
where C: Error + 'static, A: KeyErrorPolicyWithCause<O, C>,

Source§

impl<T> PlanIdentity for T
where T: Operand,

Source§

fn identity_eq(&self, other: &T) -> bool

Source§

fn identity_hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> PlanInputs for T
where T: Operand,

Source§

fn inputs(&self) -> Vec<&(dyn PlanNode + 'static)>

Source§

fn optimize(&self, session: &Session<'_>) -> Transformed<T>

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<O> SourceNode for O

Source§

impl<O> TargetNode for O

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<O> Transition for O
where O: Operand,

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V