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,
pub fn new() -> PersistedBDD<T>
[src]
Create a new PersistedBDD
.
pub fn bdd(&self) -> &BDD<T>
[src]
Return the inner BDD.
pub fn bdd_mut(&mut self) -> &mut BDD<T>
[src]
Return the inner BDD.
pub fn persist<E>(&mut self, f: BDDFunc, out: &BDDOutput<T, E>) -> Result<(), E>
[src]
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.
pub fn persist_all<E>(&mut self, out: &BDDOutput<T, E>) -> Result<(), E>
[src]
Persist all labels and nodes in the BDD.
Trait Implementations
Auto Trait Implementations
impl<T> Send for PersistedBDD<T> where
T: Send,
T: Send,
impl<T> Sync for PersistedBDD<T> where
T: Sync,
T: Sync,