pub enum RuleKind {
PointEq(VarIndex, VarIndex),
NumberEq(VarIndex, VarIndex),
Lt(VarIndex, VarIndex),
Gt(VarIndex, VarIndex),
Alternative(Vec<RuleKind>),
Invert(Box<RuleKind>),
Bias,
}
Expand description
Represents a rule of the figure. Rules are normalized iff:
- their operands are normalized
- their operands are sorted in ascending order
Variants§
PointEq(VarIndex, VarIndex)
NumberEq(VarIndex, VarIndex)
Lt(VarIndex, VarIndex)
Gt(VarIndex, VarIndex)
Alternative(Vec<RuleKind>)
Invert(Box<RuleKind>)
Bias
Trait Implementations§
source§impl Ord for RuleKind
impl Ord for RuleKind
source§impl PartialEq for RuleKind
impl PartialEq for RuleKind
source§impl PartialOrd for RuleKind
impl PartialOrd for RuleKind
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresource§impl Reconstruct for RuleKind
impl Reconstruct for RuleKind
fn reconstruct(self, arg0: &mut ReconstructCtx<'_>) -> Self
impl Eq for RuleKind
impl StructuralPartialEq for RuleKind
Auto Trait Implementations§
impl Freeze for RuleKind
impl RefUnwindSafe for RuleKind
impl Send for RuleKind
impl Sync for RuleKind
impl Unpin for RuleKind
impl UnwindSafe for RuleKind
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<T> CloneWithNode for Twhere
T: Clone,
impl<T> CloneWithNode for Twhere
T: Clone,
fn clone_with_node(&mut self) -> T
fn clone_without_node(&self) -> T
source§impl<T> Convert for T
impl<T> Convert for T
source§fn convert<U>(self, context: &CompileContext) -> Expr<U>where
U: ConvertFrom<T>,
fn convert<U>(self, context: &CompileContext) -> Expr<U>where
U: ConvertFrom<T>,
Errors Read more
source§fn can_convert<U>(&self) -> boolwhere
U: ConvertFrom<T>,
fn can_convert<U>(&self) -> boolwhere
U: ConvertFrom<T>,
Errors Read more