use crate::cardinality_constraints::CcConfig;
use crate::operations::transformations::{AdvancedFactorizationConfig, CnfAlgorithm};
use crate::pseudo_booleans::PbConfig;
use super::CacheConfig;
#[derive(Clone)]
pub struct FormulaFactoryConfig {
pub cc_config: CcConfig,
pub pb_config: PbConfig,
pub cnf_config: CnfAlgorithm,
pub caches: CacheConfig,
}
impl FormulaFactoryConfig {
pub fn new() -> Self {
Self {
cc_config: CcConfig::new(),
pb_config: PbConfig::new(),
cnf_config: CnfAlgorithm::Advanced(AdvancedFactorizationConfig::default()),
caches: CacheConfig::default(),
}
}
}
impl Default for FormulaFactoryConfig {
fn default() -> Self {
Self::new()
}
}