pub struct PartitionRefinementManager { /* private fields */ }Expand description
Partition refinement manager.
Implementations§
Source§impl PartitionRefinementManager
impl PartitionRefinementManager
Sourcepub fn with_config(
terms: Vec<TermId>,
config: PartitionRefinementConfig,
) -> Self
pub fn with_config( terms: Vec<TermId>, config: PartitionRefinementConfig, ) -> Self
Create with configuration.
Sourcepub fn stats(&self) -> &PartitionRefinementStats
pub fn stats(&self) -> &PartitionRefinementStats
Get statistics.
Sourcepub fn add_constraint(&mut self, eq: Equality)
pub fn add_constraint(&mut self, eq: Equality)
Add constraint.
Sourcepub fn apply_constraints(&mut self) -> Result<(), String>
pub fn apply_constraints(&mut self) -> Result<(), String>
Apply constraints and refine.
Sourcepub fn current_partition(&self) -> &Partition
pub fn current_partition(&self) -> &Partition
Get current partition.
Sourcepub fn next_partition(&mut self) -> Option<Partition>
pub fn next_partition(&mut self) -> Option<Partition>
Get next enumerated partition.
Sourcepub fn backtrack(&mut self, level: DecisionLevel) -> Result<(), String>
pub fn backtrack(&mut self, level: DecisionLevel) -> Result<(), String>
Backtrack to decision level.
Sourcepub fn push_decision_level(&mut self)
pub fn push_decision_level(&mut self)
Push decision level.
Sourcepub fn reset_stats(&mut self)
pub fn reset_stats(&mut self)
Reset statistics.
Auto Trait Implementations§
impl Freeze for PartitionRefinementManager
impl RefUnwindSafe for PartitionRefinementManager
impl Send for PartitionRefinementManager
impl Sync for PartitionRefinementManager
impl Unpin for PartitionRefinementManager
impl UnwindSafe for PartitionRefinementManager
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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