CompareKnowledge

Trait CompareKnowledge 

Source
pub trait CompareKnowledge<PT> {
    // Required method
    fn find_differences(
        &self,
        other: &dyn EvaluatedTerm<PT>,
        diffs: &mut Vec<TraceDifference>,
        knowledge_num: usize,
        self_source: &Source,
        other_source: &Source,
    );
}

Required Methods§

Source

fn find_differences( &self, other: &dyn EvaluatedTerm<PT>, diffs: &mut Vec<TraceDifference>, knowledge_num: usize, self_source: &Source, other_source: &Source, )

Compare an EvaluatedTerm<PT> with another EvaluatedTerm<PT> and add identified difference to diff. If both types are different, it creates a KnowledgeDiff::DifferentTypes differences if both types are the same, the objects are compared recursively using Compare crate and their differences as registered as KnowledgeDiff::InnerDifference

Implementors§

Source§

impl<T, PT: ProtocolTypes> CompareKnowledge<PT> for T
where T: Clone + Debug + 'static + Comparable,