pub struct SolutionReference<'a> { /* private fields */ }Expand description
A solution which keeps reference to its inner structures.
Implementations§
Source§impl<'a> SolutionReference<'a>
impl<'a> SolutionReference<'a>
pub fn get_domains(&self) -> DomainGeneratorIterator
Trait Implementations§
Source§impl<'a> Clone for SolutionReference<'a>
impl<'a> Clone for SolutionReference<'a>
Source§fn clone(&self) -> SolutionReference<'a>
fn clone(&self) -> SolutionReference<'a>
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<'a> Debug for SolutionReference<'a>
impl<'a> Debug for SolutionReference<'a>
Source§impl From<SolutionReference<'_>> for Solution
impl From<SolutionReference<'_>> for Solution
Source§fn from(value: SolutionReference<'_>) -> Solution
fn from(value: SolutionReference<'_>) -> Solution
Converts to this type from the input type.
impl<'a> Copy for SolutionReference<'a>
Auto Trait Implementations§
impl<'a> Freeze for SolutionReference<'a>
impl<'a> RefUnwindSafe for SolutionReference<'a>
impl<'a> Send for SolutionReference<'a>
impl<'a> Sync for SolutionReference<'a>
impl<'a> Unpin for SolutionReference<'a>
impl<'a> UnwindSafe for SolutionReference<'a>
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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 moreSource§impl<T> ProblemSolution for Twhere
T: HasAssignments,
impl<T> ProblemSolution for Twhere
T: HasAssignments,
Source§fn num_domains(&self) -> usize
fn num_domains(&self) -> usize
Returns the number of defined DomainIds.
fn get_integer_value<Var>(&self, var: Var) -> i32where
Var: IntegerVariable,
fn get_literal_value(&self, literal: Literal) -> bool
Source§impl<T> ReadDomains for Twhere
T: HasAssignments,
impl<T> ReadDomains for Twhere
T: HasAssignments,
Source§fn evaluate_predicate(&self, predicate: Predicate) -> Option<bool>
fn evaluate_predicate(&self, predicate: Predicate) -> Option<bool>
Returns whether the provided
Predicate is assigned (either true or false) or is
currently unassigned.Source§fn evaluate_literal(&self, literal: Literal) -> Option<bool>
fn evaluate_literal(&self, literal: Literal) -> Option<bool>
Returns whether the provided
Literal is assigned (either true or false) or is
currently unassigned.Source§fn get_holes_at_current_checkpoint<Var>(
&self,
var: &Var,
) -> impl Iterator<Item = i32>where
Var: IntegerVariable,
fn get_holes_at_current_checkpoint<Var>(
&self,
var: &Var,
) -> impl Iterator<Item = i32>where
Var: IntegerVariable,
Returns the holes in the domain which were created on the current checkpoint.
Source§fn get_holes<Var>(&self, var: &Var) -> impl Iterator<Item = i32>where
Var: IntegerVariable,
fn get_holes<Var>(&self, var: &Var) -> impl Iterator<Item = i32>where
Var: IntegerVariable,
Returns all of the holes (currently) in the domain of
var (including ones which were
created at previous decision levels).Source§fn is_fixed<Var>(&self, var: &Var) -> boolwhere
Var: IntegerVariable,
fn is_fixed<Var>(&self, var: &Var) -> boolwhere
Var: IntegerVariable,
Returns
true if the domain of the given variable is singleton (i.e., the variable is
fixed).Source§fn lower_bound<Var>(&self, var: &Var) -> i32where
Var: IntegerVariable,
fn lower_bound<Var>(&self, var: &Var) -> i32where
Var: IntegerVariable,
Returns the lowest value in the domain of
var.Source§fn lower_bound_at_trail_position<Var>(
&self,
var: &Var,
trail_position: usize,
) -> i32where
Var: IntegerVariable,
fn lower_bound_at_trail_position<Var>(
&self,
var: &Var,
trail_position: usize,
) -> i32where
Var: IntegerVariable,
Source§fn upper_bound<Var>(&self, var: &Var) -> i32where
Var: IntegerVariable,
fn upper_bound<Var>(&self, var: &Var) -> i32where
Var: IntegerVariable,
Returns the highest value in the domain of
var.Source§fn upper_bound_at_trail_position<Var>(
&self,
var: &Var,
trail_position: usize,
) -> i32where
Var: IntegerVariable,
fn upper_bound_at_trail_position<Var>(
&self,
var: &Var,
trail_position: usize,
) -> i32where
Var: IntegerVariable,
Source§fn contains<Var>(&self, var: &Var, value: i32) -> boolwhere
Var: IntegerVariable,
fn contains<Var>(&self, var: &Var, value: i32) -> boolwhere
Var: IntegerVariable,
Returns whether the provided
value is in the domain of var.Source§fn contains_at_trail_position<Var>(
&self,
var: &Var,
value: i32,
trail_position: usize,
) -> boolwhere
Var: IntegerVariable,
fn contains_at_trail_position<Var>(
&self,
var: &Var,
value: i32,
trail_position: usize,
) -> boolwhere
Var: IntegerVariable,
Source§fn iterate_domain<Var>(&self, var: &Var) -> impl Iterator<Item = i32>where
Var: IntegerVariable,
fn iterate_domain<Var>(&self, var: &Var) -> impl Iterator<Item = i32>where
Var: IntegerVariable,
Returns an
Iterator over the values in the domain of the provided var (including the
lower-bound and upper-bound values).Source§fn is_decision_predicate(&self, predicate: Predicate) -> bool
fn is_decision_predicate(&self, predicate: Predicate) -> bool
Source§fn is_initial_bound(&self, predicate: Predicate) -> bool
fn is_initial_bound(&self, predicate: Predicate) -> bool
Returns whether the provided
Predicate is an initial bound of its domain.Source§fn read_trailed_integer(&self, trailed_integer: TrailedInteger) -> i64
fn read_trailed_integer(&self, trailed_integer: TrailedInteger) -> i64
Returns the current value of the provided
TrailedInteger.Source§fn new_trailed_integer(&mut self, initial_value: i64) -> TrailedInteger
fn new_trailed_integer(&mut self, initial_value: i64) -> TrailedInteger
Creates a new
TrailedInteger assigned to the provided initial_value.Source§fn write_trailed_integer(&mut self, trailed_integer: TrailedInteger, value: i64)
fn write_trailed_integer(&mut self, trailed_integer: TrailedInteger, value: i64)
Assigns the provided
TrailedInteger to the provided value.Source§fn get_checkpoint(&self) -> usize
fn get_checkpoint(&self) -> usize
Returns the current checkpoint.
Source§fn initial_lower_bound(&self, var: DomainId) -> i32
fn initial_lower_bound(&self, var: DomainId) -> i32
Returns the lowest value in the domain of
var at the time of its creation.Source§fn initial_upper_bound(&self, var: DomainId) -> i32
fn initial_upper_bound(&self, var: DomainId) -> i32
Returns the highest value in the domain of
var at the time of its creation.Source§fn initial_holes(&self, var: DomainId) -> Vec<i32>
fn initial_holes(&self, var: DomainId) -> Vec<i32>
Returns all of the holes present at the time of thecreation of
var.Source§fn number_of_domains(&self) -> u32
fn number_of_domains(&self) -> u32
Returns the number of currently defined domains.