pub struct SimpleStratifiedProgram<'p> { /* private fields */ }
Expand description
An implementation of the StratifiedProgram
trait.
This can be obtained through SimpleProgram::stratify.
Trait Implementations§
Source§impl<'p> Program<'p> for SimpleStratifiedProgram<'p>
impl<'p> Program<'p> for SimpleStratifiedProgram<'p>
Source§fn 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.
Source§fn 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.
Source§impl<'p> StratifiedProgram<'p> for SimpleStratifiedProgram<'p>
impl<'p> StratifiedProgram<'p> for SimpleStratifiedProgram<'p>
Source§fn strata(&'p self) -> impl Iterator<Item = &'p HashSet<&'p PredicateSym<'p>>>
fn strata(&'p self) -> impl Iterator<Item = &'p HashSet<&'p PredicateSym<'p>>>
Returns an iterator of strata, in dependency order.
TODO: consider Iterator<Iterator>.
Source§fn pred_to_index(&'p self, sym: &PredicateSym<'_>) -> Option<usize>
fn pred_to_index(&'p self, sym: &PredicateSym<'_>) -> Option<usize>
Returns the stratum (index into strata list).
Auto Trait Implementations§
impl<'p> Freeze for SimpleStratifiedProgram<'p>
impl<'p> !RefUnwindSafe for SimpleStratifiedProgram<'p>
impl<'p> !Send for SimpleStratifiedProgram<'p>
impl<'p> !Sync for SimpleStratifiedProgram<'p>
impl<'p> Unpin for SimpleStratifiedProgram<'p>
impl<'p> !UnwindSafe for SimpleStratifiedProgram<'p>
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