Struct boolean_expression::PersistedBDD
[−]
[src]
pub struct PersistedBDD<T> where
T: Clone + Debug + Eq + Ord + Hash, { /* fields omitted */ }
A PersistedBDD
is a wrapper around a BDD
that provides a means to write
BDD labels and nodes out to a BDDOutput
. It tracks how much of the BDD
has already been writen out, and writes out new nodes and labels as
required when its persist()
or persist_all()
method is called.
Methods
impl<T> PersistedBDD<T> where
T: Clone + Debug + Eq + Ord + Hash,
[src]
T: Clone + Debug + Eq + Ord + Hash,
fn new() -> PersistedBDD<T>
Create a new PersistedBDD
.
fn bdd(&self) -> &BDD<T>
Return the inner BDD.
fn bdd_mut(&mut self) -> &mut BDD<T>
Return the inner BDD.
fn persist<E>(&mut self, f: BDDFunc, out: &BDDOutput<T, E>) -> Result<(), E>
Persist (at least) all labels and nodes in the BDD necessary to fully
describe BDD function f
. More records than strictly necessary may be
written out.
fn persist_all<E>(&mut self, out: &BDDOutput<T, E>) -> Result<(), E>
Persist all labels and nodes in the BDD.