pub struct OxiddManager {
mgr: BDDManagerRef,
next_var_index: Rc<Mutex<u32>>,
}Expand description
BDD manager for OxiDD BDDs
This manager is a wrapper around the OxiDD BDD manager. It panics if the BDD manager runs out of memory.
By default the manager is configured to have a maximum of 2^30 nodes and 2^10 nodes in the apply cache.
Fields§
§mgr: BDDManagerRefReference to the manager
next_var_index: Rc<Mutex<u32>>Index of the next variable to be created
Implementations§
Source§impl OxiddManager
impl OxiddManager
Sourcepub fn new() -> Self
pub fn new() -> Self
Create a new Oxidd BDD manager with default configuration
This manager internally uses the OxiDD BDD library to create and manipulate BDDs.
This manager panics if it runs out of memory. By default the manager is configured to have a maximum of 2^30 nodes and 2^10 nodes in the apply cache.
Sourcepub fn new_with_config(config: &OxiddManagerConfig) -> Self
pub fn new_with_config(config: &OxiddManagerConfig) -> Self
Create a new Oxidd BDD manager with custom configuration
Trait Implementations§
Source§impl BddManager for OxiddManager
impl BddManager for OxiddManager
Source§impl Clone for OxiddManager
impl Clone for OxiddManager
Source§fn clone(&self) -> OxiddManager
fn clone(&self) -> OxiddManager
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for OxiddManager
impl Debug for OxiddManager
Source§impl Default for OxiddManager
impl Default for OxiddManager
Auto Trait Implementations§
impl Freeze for OxiddManager
impl !RefUnwindSafe for OxiddManager
impl !Send for OxiddManager
impl !Sync for OxiddManager
impl Unpin for OxiddManager
impl !UnwindSafe for OxiddManager
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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