Struct mz_sql::query_model::validator::quantifier::QuantifierConstraint
source · pub struct QuantifierConstraint {
min: Bound<usize>,
max: Bound<usize>,
allowed_types: QuantifierType,
select_input: bool,
select_parent: bool,
}
Expand description
A model for constraints imposed on the input or ranging quantifiers of a query box.
Fields§
§min: Bound<usize>
Lower bound for the number of allowed quantifiers that match the allowed_types
bitmask.
max: Bound<usize>
Upper bound for the number of allowed quantifiers that match the allowed_types
bitmask.
allowed_types: QuantifierType
The allowed QuantifierType
variant discriminants.
select_input: bool
Indicates whether the input of a quantifier with an allowed_type
must be a select box.
select_parent: bool
Indicates whether the parent of a quantifier with an allowed_type
must be a select box.
Implementations§
source§impl QuantifierConstraint
impl QuantifierConstraint
sourcefn satisfies_q_type<'a>(&self, quantifier: &'a Quantifier) -> bool
fn satisfies_q_type<'a>(&self, quantifier: &'a Quantifier) -> bool
Check if the given Quantifier
satisfy the allowed_types
of the this constraint.
sourcefn satisfies_b_type<'a>(
&self,
quantifier: &'a Quantifier,
model: &'a Model
) -> bool
fn satisfies_b_type<'a>(
&self,
quantifier: &'a Quantifier,
model: &'a Model
) -> bool
Check if the boxes referenced by the given Quantifier
satisfy the input_is_select
and parent_is_select
of the this constraint.
Trait Implementations§
source§impl Clone for QuantifierConstraint
impl Clone for QuantifierConstraint
source§fn clone(&self) -> QuantifierConstraint
fn clone(&self) -> QuantifierConstraint
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 QuantifierConstraint
impl Debug for QuantifierConstraint
source§impl Hash for QuantifierConstraint
impl Hash for QuantifierConstraint
source§impl PartialEq<QuantifierConstraint> for QuantifierConstraint
impl PartialEq<QuantifierConstraint> for QuantifierConstraint
source§fn eq(&self, other: &QuantifierConstraint) -> bool
fn eq(&self, other: &QuantifierConstraint) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl RangeBounds<usize> for QuantifierConstraint
impl RangeBounds<usize> for QuantifierConstraint
1.35.0 · source§fn contains<U>(&self, item: &U) -> boolwhere
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
fn contains<U>(&self, item: &U) -> boolwhere
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
impl Eq for QuantifierConstraint
impl StructuralEq for QuantifierConstraint
impl StructuralPartialEq for QuantifierConstraint
Auto Trait Implementations§
impl RefUnwindSafe for QuantifierConstraint
impl Send for QuantifierConstraint
impl Sync for QuantifierConstraint
impl Unpin for QuantifierConstraint
impl UnwindSafe for QuantifierConstraint
Blanket Implementations§
source§impl<T> CloneDebuggableStorage for Twhere
T: DebuggableStorage + Clone,
impl<T> CloneDebuggableStorage for Twhere
T: DebuggableStorage + Clone,
fn clone_storage(&self) -> Box<dyn CloneDebuggableStorage + 'static, Global>
source§impl<T> CloneableStorage for Twhere
T: Any + Send + Sync + Clone,
impl<T> CloneableStorage for Twhere
T: Any + Send + Sync + Clone,
fn clone_storage(&self) -> Box<dyn CloneableStorage + 'static, Global>
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
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<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> Pointable for T
impl<T> Pointable 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
.