pub struct KnuthBendixData {
pub rules: Vec<(String, String)>,
pub critical_pairs: Vec<(String, String)>,
pub is_confluent: bool,
pub order: String,
}Expand description
Knuth-Bendix completion data.
Fields§
§rules: Vec<(String, String)>Current set of rules.
critical_pairs: Vec<(String, String)>Critical pairs found.
is_confluent: boolWhether the system is confluent.
order: StringTermination order description.
Implementations§
Source§impl KnuthBendixData
impl KnuthBendixData
Sourcepub fn add_oriented_rule(&mut self, lhs: &str, rhs: &str)
pub fn add_oriented_rule(&mut self, lhs: &str, rhs: &str)
Adds a rule (already oriented).
Sourcepub fn add_critical_pair(&mut self, left: &str, right: &str)
pub fn add_critical_pair(&mut self, left: &str, right: &str)
Registers a critical pair.
Sourcepub fn mark_confluent(&mut self)
pub fn mark_confluent(&mut self)
Marks as confluent (after resolving all critical pairs).
Sourcepub fn description(&self) -> String
pub fn description(&self) -> String
Returns the convergent TRS description.
Trait Implementations§
Source§impl Clone for KnuthBendixData
impl Clone for KnuthBendixData
Source§fn clone(&self) -> KnuthBendixData
fn clone(&self) -> KnuthBendixData
Returns a duplicate 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 moreAuto Trait Implementations§
impl Freeze for KnuthBendixData
impl RefUnwindSafe for KnuthBendixData
impl Send for KnuthBendixData
impl Sync for KnuthBendixData
impl Unpin for KnuthBendixData
impl UnsafeUnpin for KnuthBendixData
impl UnwindSafe for KnuthBendixData
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