Enum mz_expr::AccessStrategy
source · pub enum AccessStrategy {
UnknownOrLocal,
Persist,
Index(Vec<(GlobalId, IndexUsageType)>),
SameDataflow,
}
Expand description
For a global Get, this indicates whether we are going to read from Persist or from an index. (See comment in MirRelationExpr::Get.)
Variants§
UnknownOrLocal
It’s either a local Get (a CTE), or unknown at the time.
prune_and_annotate_dataflow_index_imports
decides it for global Gets, and thus switches to
one of the other variants.
Persist
The Get will read from Persist.
Index(Vec<(GlobalId, IndexUsageType)>)
The Get will read from an index or indexes: (index id, how the index will be used).
SameDataflow
The Get will read a collection that is computed by the same dataflow, but in a different
BuildDesc
in objects_to_build
.
Trait Implementations§
source§impl Arbitrary for AccessStrategy
impl Arbitrary for AccessStrategy
§type Parameters = <Vec<(GlobalId, IndexUsageType)> as Arbitrary>::Parameters
type Parameters = <Vec<(GlobalId, IndexUsageType)> as Arbitrary>::Parameters
The type of parameters that
arbitrary_with
accepts for configuration
of the generated Strategy
. Parameters must implement Default
.§type Strategy = Union<BoxedStrategy<AccessStrategy>>
type Strategy = Union<BoxedStrategy<AccessStrategy>>
The type of
Strategy
used to generate values of type Self
.source§fn arbitrary_with(_top: Self::Parameters) -> Self::Strategy
fn arbitrary_with(_top: Self::Parameters) -> Self::Strategy
source§impl Clone for AccessStrategy
impl Clone for AccessStrategy
source§fn clone(&self) -> AccessStrategy
fn clone(&self) -> AccessStrategy
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for AccessStrategy
impl Debug for AccessStrategy
source§impl<'de> Deserialize<'de> for AccessStrategy
impl<'de> Deserialize<'de> for AccessStrategy
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Hash for AccessStrategy
impl Hash for AccessStrategy
source§impl Ord for AccessStrategy
impl Ord for AccessStrategy
source§fn cmp(&self, other: &AccessStrategy) -> Ordering
fn cmp(&self, other: &AccessStrategy) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq for AccessStrategy
impl PartialEq for AccessStrategy
source§impl PartialOrd for AccessStrategy
impl PartialOrd for AccessStrategy
source§impl Serialize for AccessStrategy
impl Serialize for AccessStrategy
impl Eq for AccessStrategy
impl StructuralPartialEq for AccessStrategy
Auto Trait Implementations§
impl Freeze for AccessStrategy
impl RefUnwindSafe for AccessStrategy
impl Send for AccessStrategy
impl Sync for AccessStrategy
impl Unpin for AccessStrategy
impl UnwindSafe for AccessStrategy
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<T> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request
source§impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> PreferredContainer for T
impl<T> PreferredContainer for T
source§impl<T> ProgressEventTimestamp for T
impl<T> ProgressEventTimestamp for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See
RustType::into_proto
.source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
The method of
std::ops::AddAssign
, for types that do not implement AddAssign
.