pub struct PersistedBDD<T>{ /* private fields */ }
Expand description
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.
Implementations§
Source§impl<T> PersistedBDD<T>
impl<T> PersistedBDD<T>
Sourcepub fn new() -> PersistedBDD<T>
pub fn new() -> PersistedBDD<T>
Create a new PersistedBDD
.
Sourcepub fn persist<E>(
&mut self,
f: BDDFunc,
out: &dyn BDDOutput<T, E>,
) -> Result<(), E>
pub fn persist<E>( &mut self, f: BDDFunc, out: &dyn 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.
Sourcepub fn persist_all<E>(&mut self, out: &dyn BDDOutput<T, E>) -> Result<(), E>
pub fn persist_all<E>(&mut self, out: &dyn BDDOutput<T, E>) -> Result<(), E>
Persist all labels and nodes in the BDD.
Auto Trait Implementations§
impl<T> Freeze for PersistedBDD<T>
impl<T> RefUnwindSafe for PersistedBDD<T>where
T: RefUnwindSafe,
impl<T> Send for PersistedBDD<T>where
T: Send,
impl<T> Sync for PersistedBDD<T>where
T: Sync,
impl<T> Unpin for PersistedBDD<T>where
T: Unpin,
impl<T> UnwindSafe for PersistedBDD<T>where
T: UnwindSafe,
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more