Enum dmc::option_alternatives::Decision
[−]
[src]
pub enum Decision<T> { Manual(T), Auto, }
Type for values which may be either set manually or left for the implementation to decide.
The actual meaning of Auto
is often
"best setting", but this is not required as it depends too much
on context.
APIs should use this instead
of Option
For a rationale, see https://english.stackexchange.com/a/203664
Variants
Manual(T)
Auto
Methods
impl<T> Decision<T>
[src]
fn is_manual(&self) -> bool
fn is_auto(&self) -> bool
fn into_option(self) -> Option<T>
fn as_ref(&self) -> Decision<&T>
fn as_mut(&mut self) -> Decision<&mut T>
fn as_option(&self) -> Option<&T>
fn as_mut_option(&mut self) -> Option<&mut T>
impl<T> Decision<Option<T>>
[src]
fn unwrap_all(self) -> T
Unwrap both this and the underlying Option
.
fn unwrap_all_or(self, alt: T) -> T
fn is_manual_some(&self) -> bool
fn is_manual_none(&self) -> bool
impl<T: Default> Decision<Option<T>>
[src]
fn unwrap_all_or_default(self) -> T
Trait Implementations
impl<T: Clone> Clone for Decision<T>
[src]
fn clone(&self) -> Decision<T>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl<T: Copy> Copy for Decision<T>
[src]
impl<T: PartialEq> PartialEq for Decision<T>
[src]
fn eq(&self, __arg_0: &Decision<T>) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Decision<T>) -> bool
This method tests for !=
.
impl<T: PartialOrd> PartialOrd for Decision<T>
[src]
fn partial_cmp(&self, __arg_0: &Decision<T>) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
fn lt(&self, __arg_0: &Decision<T>) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
fn le(&self, __arg_0: &Decision<T>) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
fn gt(&self, __arg_0: &Decision<T>) -> bool
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn ge(&self, __arg_0: &Decision<T>) -> bool
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl<T: Eq> Eq for Decision<T>
[src]
impl<T: Ord> Ord for Decision<T>
[src]
fn cmp(&self, __arg_0: &Decision<T>) -> Ordering
This method returns an Ordering
between self
and other
. Read more
fn max(self, other: Self) -> Self
ord_max_min
)Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
ord_max_min
)Compares and returns the minimum of two values. Read more
impl<T: Debug> Debug for Decision<T>
[src]
impl<T: Hash> Hash for Decision<T>
[src]
fn hash<__HT: Hasher>(&self, __arg_0: &mut __HT)
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl<T> Default for Decision<T>
[src]
impl<T> From<T> for Decision<T>
[src]
fn from(val: T) -> Self
Performs the conversion.