pub struct CuddManagerConfig {
pub num_vars: usize,
pub num_vars_z: usize,
pub num_slots: usize,
pub cache_slots: usize,
pub max_memory: usize,
pub reorder_method: CuddReorderMethod,
}Expand description
Configuration for the CUDD manager
The documentation for these struct values has been taken from the CUDD user’s manual
See for example http://web.mit.edu/sage/export/tmp/y/usr/share/doc/polybori/cudd/node3.html
Fields§
§num_vars: usizeIt is the initial number of variables for BDDs and ADDs. If the total number of variables needed by the application is known, then it is slightly more efficient to create a manager with that number of variables. If the number is unknown, it can be set to 0, or to any other lower bound on the number of variables. Requesting more variables than are actually needed is not incorrect, but is not efficient. Default value: 0
num_vars_z: usizeIt is the initial number of variables for ZDDs. Default value: 0
num_slots: usizeDetermines the initial size of each subtable of the unique table. There is a subtable for each variable. The size of each subtable is dynamically adjusted to reflect the number of nodes. It is normally O.K. to use the default value for this parameter, which is CUDD_UNIQUE_SLOTS.
Default value: CUDD_UNIQUE_SLOTS.
cache_slots: usizeIt is the initial size (number of entries) of the cache.
Default value: CUDD_CACHE_SLOTS.
max_memory: usizeIt is the target value for the maximum memory occupation (in bytes). The package uses this value to decide two parameters.
- the maximum size to which the cache will grow, regardless of the hit rate or the size of the unique table.
- the maximum size to which growth of the unique table will be preferred to garbage collection.
Default value: 0
reorder_method: CuddReorderMethodReordering method to be used by the CUDD manager
Default value: CuddReorderMethod::Sift
Trait Implementations§
Source§impl Clone for CuddManagerConfig
impl Clone for CuddManagerConfig
Source§fn clone(&self) -> CuddManagerConfig
fn clone(&self) -> CuddManagerConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CuddManagerConfig
impl Debug for CuddManagerConfig
Source§impl Default for CuddManagerConfig
impl Default for CuddManagerConfig
Source§impl<'de> Deserialize<'de> for CuddManagerConfig
impl<'de> Deserialize<'de> for CuddManagerConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for CuddManagerConfig
impl PartialEq for CuddManagerConfig
impl StructuralPartialEq for CuddManagerConfig
Auto Trait Implementations§
impl Freeze for CuddManagerConfig
impl RefUnwindSafe for CuddManagerConfig
impl Send for CuddManagerConfig
impl Sync for CuddManagerConfig
impl Unpin for CuddManagerConfig
impl UnwindSafe for CuddManagerConfig
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
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>
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>
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