Struct Iteration

Source
pub struct Iteration { /* private fields */ }
Expand description

An iterative context for recursive evaluation.

An Iteration tracks monotonic variables, and monitors their progress. It can inform the user if they have ceased changing, at which point the computation should be done.

Implementations§

Source§

impl Iteration

Source

pub fn new() -> Self

Create a new iterative context.

Source

pub fn changed(&mut self) -> bool

Reports whether any of the monitored variables have changed since the most recent call.

Source

pub fn variable<Tuple: Ord + 'static>(&mut self, name: &str) -> Variable<Tuple>

Creates a new named variable associated with the iterative context.

Source

pub fn variable_indistinct<Tuple: Ord + 'static>( &mut self, name: &str, ) -> Variable<Tuple>

Creates a new named variable associated with the iterative context.

This variable will not be maintained distinctly, and may advertise tuples as recent multiple times (perhaps unboundedly many times).

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.