Trait mangle_analysis::Program
source · pub trait Program<'p> {
// Required methods
fn extensional_preds(&'p self) -> impl Iterator<Item = &'p PredicateSym<'p>>;
fn intensional_preds(&'p self) -> impl Iterator<Item = &'p PredicateSym<'p>>;
fn rules(
&'p self,
sym: &'p PredicateSym<'p>,
) -> impl Iterator<Item = &'p Clause<'p>>;
}Expand description
Represents a program.
extensional_preds and intensional_preds are disjoint.
Required Methods§
sourcefn extensional_preds(&'p self) -> impl Iterator<Item = &'p PredicateSym<'p>>
fn extensional_preds(&'p self) -> impl Iterator<Item = &'p PredicateSym<'p>>
Returns predicates for extensional DB. May return an empty iterator.
sourcefn intensional_preds(&'p self) -> impl Iterator<Item = &'p PredicateSym<'p>>
fn intensional_preds(&'p self) -> impl Iterator<Item = &'p PredicateSym<'p>>
Returns predicates for intensional DB. May return an empty iterator.
sourcefn rules(
&'p self,
sym: &'p PredicateSym<'p>,
) -> impl Iterator<Item = &'p Clause<'p>>
fn rules( &'p self, sym: &'p PredicateSym<'p>, ) -> impl Iterator<Item = &'p Clause<'p>>
Maps predicates of intensional DB to rules. May return an empty iterator.
Object Safety§
This trait is not object safe.