pub struct DecisionVariable {
pub domain: Domain,
}
Expand description
Represents a decision variable within a computational model.
A DecisionVariable
has a domain that defines the set of values it can take. The domain could be:
- A boolean domain, meaning the variable can only be
true
orfalse
. - An integer domain, meaning the variable can only take specific integer values or a range of integers.
§Fields
domain
:- Type:
Domain
- Represents the set of possible values that this decision variable can assume. The domain can be a range of integers (IntDomain) or a boolean domain (BoolDomain).
- Type:
§Example
use crate::ast::domains::{DecisionVariable, Domain, Range};
let bool_var = DecisionVariable::new(Domain::BoolDomain); let int_var = DecisionVariable::new(Domain::IntDomain(vec![Range::Bounded(1, 10)]));
println!(“Boolean Variable: {}”, bool_var); println!(“Integer Variable: {}”, int_var);
Fields§
§domain: Domain
Implementations§
Source§impl DecisionVariable
impl DecisionVariable
pub fn new(domain: Domain) -> DecisionVariable
Trait Implementations§
Source§impl Clone for DecisionVariable
impl Clone for DecisionVariable
Source§fn clone(&self) -> DecisionVariable
fn clone(&self) -> DecisionVariable
Returns a copy 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 DecisionVariable
impl Debug for DecisionVariable
Source§impl<'de> Deserialize<'de> for DecisionVariable
impl<'de> Deserialize<'de> for DecisionVariable
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<DecisionVariable, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<DecisionVariable, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for DecisionVariable
impl Display for DecisionVariable
Source§impl PartialEq for DecisionVariable
impl PartialEq for DecisionVariable
Source§impl Serialize for DecisionVariable
impl Serialize for DecisionVariable
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Eq for DecisionVariable
impl StructuralPartialEq for DecisionVariable
Auto Trait Implementations§
impl Freeze for DecisionVariable
impl RefUnwindSafe for DecisionVariable
impl Send for DecisionVariable
impl Sync for DecisionVariable
impl Unpin for DecisionVariable
impl UnwindSafe for DecisionVariable
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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