pub struct AbsorbtionRules;Expand description
A normalization rule that applies absorption laws for unions and intersections.
A union containing True always evaluates to True, and an
intersection containing False always evaluates to False.
Trait Implementations§
Source§impl Default for AbsorbtionRules
impl Default for AbsorbtionRules
Source§fn default() -> AbsorbtionRules
fn default() -> AbsorbtionRules
Returns the “default value” for a type. Read more
Source§impl RewriteRule for AbsorbtionRules
impl RewriteRule for AbsorbtionRules
Source§fn rewrite(&self, node: NormalizedSelection) -> NormalizedSelection
fn rewrite(&self, node: NormalizedSelection) -> NormalizedSelection
Applies a rewrite step to a node whose children have already
been recursively rewritten.
Auto Trait Implementations§
impl Freeze for AbsorbtionRules
impl RefUnwindSafe for AbsorbtionRules
impl Send for AbsorbtionRules
impl Sync for AbsorbtionRules
impl Unpin for AbsorbtionRules
impl UnwindSafe for AbsorbtionRules
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<A, M> Handler<IndexedErasedUnbound<M>> for A
impl<A, M> Handler<IndexedErasedUnbound<M>> for A
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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§impl<T> NoneValue for Twhere
T: Default,
impl<T> NoneValue for Twhere
T: Default,
type NoneType = T
§fn null_value() -> T
fn null_value() -> T
The none-equivalent value.
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> QuoteExt for Twhere
T: ?Sized,
impl<T> QuoteExt for Twhere
T: ?Sized,
fn push_quoted<'q, Q, S>(&mut self, _q: Q, s: S)where
Q: QuoteInto<T>,
S: Into<Quotable<'q>>,
Source§impl<T> RewriteRuleExt for Twhere
T: RewriteRule,
impl<T> RewriteRuleExt for Twhere
T: RewriteRule,
Source§fn then<R>(self, other: R) -> (Self, R)where
R: RewriteRule,
fn then<R>(self, other: R) -> (Self, R)where
R: RewriteRule,
Chains this rule with another rule, creating a composite rule
that applies
self first, then other.