Tuple Fields
0: Option<u64>
Implementations
sourceimpl ClockTime
impl ClockTime
pub fn hours(&self) -> Option<u64>
pub fn minutes(&self) -> Option<u64>
pub fn seconds(&self) -> Option<u64>
pub fn mseconds(&self) -> Option<u64>
pub fn useconds(&self) -> Option<u64>
pub fn nseconds(&self) -> Option<u64>
pub fn nanoseconds(&self) -> Option<u64>
pub fn from_seconds(seconds: u64) -> ClockTime
pub fn from_mseconds(mseconds: u64) -> ClockTime
pub fn from_useconds(useconds: u64) -> ClockTime
pub fn from_nseconds(nseconds: u64) -> ClockTime
pub fn none() -> ClockTime
Methods from Deref<Target = Option<u64>>
1.0.0 · sourcepub fn as_ref(&self) -> Option<&T>
pub fn as_ref(&self) -> Option<&T>
Converts from &Option<T>
to Option<&T>
.
Examples
Converts an Option<String>
into an Option<usize>
, preserving
the original. The map
method takes the self
argument by value, consuming the original,
so this technique uses as_ref
to first take an Option
to a reference
to the value inside the original.
let text: Option<String> = Some("Hello, world!".to_string());
// First, cast `Option<String>` to `Option<&String>` with `as_ref`,
// then consume *that* with `map`, leaving `text` on the stack.
let text_length: Option<usize> = text.as_ref().map(|s| s.len());
println!("still can print text: {text:?}");
1.0.0 · sourcepub fn as_mut(&mut self) -> Option<&mut T>
pub fn as_mut(&mut self) -> Option<&mut T>
Converts from &mut Option<T>
to Option<&mut T>
.
Examples
let mut x = Some(2);
match x.as_mut() {
Some(v) => *v = 42,
None => {},
}
assert_eq!(x, Some(42));
1.40.0 · sourcepub fn as_deref(&self) -> Option<&<T as Deref>::Target>where
T: Deref,
pub fn as_deref(&self) -> Option<&<T as Deref>::Target>where
T: Deref,
Converts from Option<T>
(or &Option<T>
) to Option<&T::Target>
.
Leaves the original Option in-place, creating a new one with a reference
to the original one, additionally coercing the contents via Deref
.
Examples
let x: Option<String> = Some("hey".to_owned());
assert_eq!(x.as_deref(), Some("hey"));
let x: Option<String> = None;
assert_eq!(x.as_deref(), None);
1.40.0 · sourcepub fn as_deref_mut(&mut self) -> Option<&mut <T as Deref>::Target>where
T: DerefMut,
pub fn as_deref_mut(&mut self) -> Option<&mut <T as Deref>::Target>where
T: DerefMut,
Converts from Option<T>
(or &mut Option<T>
) to Option<&mut T::Target>
.
Leaves the original Option
in-place, creating a new one containing a mutable reference to
the inner type’s Deref::Target
type.
Examples
let mut x: Option<String> = Some("hey".to_owned());
assert_eq!(x.as_deref_mut().map(|x| {
x.make_ascii_uppercase();
x
}), Some("HEY".to_owned().as_mut_str()));
1.0.0 · sourcepub fn iter(&self) -> Iter<'_, T>
pub fn iter(&self) -> Iter<'_, T>
Returns an iterator over the possibly contained value.
Examples
let x = Some(4);
assert_eq!(x.iter().next(), Some(&4));
let x: Option<u32> = None;
assert_eq!(x.iter().next(), None);
1.0.0 · sourcepub fn iter_mut(&mut self) -> IterMut<'_, T>
pub fn iter_mut(&mut self) -> IterMut<'_, T>
Returns a mutable iterator over the possibly contained value.
Examples
let mut x = Some(4);
match x.iter_mut().next() {
Some(v) => *v = 42,
None => {},
}
assert_eq!(x, Some(42));
let mut x: Option<u32> = None;
assert_eq!(x.iter_mut().next(), None);
1.53.0 · sourcepub fn insert(&mut self, value: T) -> &mut T
pub fn insert(&mut self, value: T) -> &mut T
Inserts value
into the option, then returns a mutable reference to it.
If the option already contains a value, the old value is dropped.
See also Option::get_or_insert
, which doesn’t update the value if
the option already contains Some
.
Example
let mut opt = None;
let val = opt.insert(1);
assert_eq!(*val, 1);
assert_eq!(opt.unwrap(), 1);
let val = opt.insert(2);
assert_eq!(*val, 2);
*val = 3;
assert_eq!(opt.unwrap(), 3);
1.20.0 · sourcepub fn get_or_insert(&mut self, value: T) -> &mut T
pub fn get_or_insert(&mut self, value: T) -> &mut T
Inserts value
into the option if it is None
, then
returns a mutable reference to the contained value.
See also Option::insert
, which updates the value even if
the option already contains Some
.
Examples
let mut x = None;
{
let y: &mut u32 = x.get_or_insert(5);
assert_eq!(y, &5);
*y = 7;
}
assert_eq!(x, Some(7));
sourcepub fn get_or_insert_default(&mut self) -> &mut Twhere
T: Default,
🔬This is a nightly-only experimental API. (option_get_or_insert_default
)
pub fn get_or_insert_default(&mut self) -> &mut Twhere
T: Default,
option_get_or_insert_default
)1.20.0 · sourcepub fn get_or_insert_with<F>(&mut self, f: F) -> &mut Twhere
F: FnOnce() -> T,
pub fn get_or_insert_with<F>(&mut self, f: F) -> &mut Twhere
F: FnOnce() -> T,
1.31.0 · sourcepub fn replace(&mut self, value: T) -> Option<T>
pub fn replace(&mut self, value: T) -> Option<T>
Replaces the actual value in the option by the value given in parameter,
returning the old value if present,
leaving a Some
in its place without deinitializing either one.
Examples
let mut x = Some(2);
let old = x.replace(5);
assert_eq!(x, Some(5));
assert_eq!(old, Some(2));
let mut x = None;
let old = x.replace(3);
assert_eq!(x, Some(3));
assert_eq!(old, None);
sourcepub fn contains<U>(&self, x: &U) -> boolwhere
U: PartialEq<T>,
🔬This is a nightly-only experimental API. (option_result_contains
)
pub fn contains<U>(&self, x: &U) -> boolwhere
U: PartialEq<T>,
option_result_contains
)Returns true
if the option is a Some
value containing the given value.
Examples
#![feature(option_result_contains)]
let x: Option<u32> = Some(2);
assert_eq!(x.contains(&2), true);
let x: Option<u32> = Some(3);
assert_eq!(x.contains(&2), false);
let x: Option<u32> = None;
assert_eq!(x.contains(&2), false);
Trait Implementations
sourceimpl<'a> AddAssign<&'a ClockTime> for ClockTime
impl<'a> AddAssign<&'a ClockTime> for ClockTime
sourcefn add_assign(&mut self, other: &'a ClockTime)
fn add_assign(&mut self, other: &'a ClockTime)
+=
operation. Read moresourceimpl AddAssign<ClockTime> for ClockTime
impl AddAssign<ClockTime> for ClockTime
sourcefn add_assign(&mut self, other: ClockTime)
fn add_assign(&mut self, other: ClockTime)
+=
operation. Read moresourceimpl<'a> DivAssign<&'a ClockTime> for ClockTime
impl<'a> DivAssign<&'a ClockTime> for ClockTime
sourcefn div_assign(&mut self, other: &'a ClockTime)
fn div_assign(&mut self, other: &'a ClockTime)
/=
operation. Read moresourceimpl<'a> DivAssign<&'a u64> for ClockTime
impl<'a> DivAssign<&'a u64> for ClockTime
sourcefn div_assign(&mut self, other: &'a u64)
fn div_assign(&mut self, other: &'a u64)
/=
operation. Read moresourceimpl DivAssign<ClockTime> for ClockTime
impl DivAssign<ClockTime> for ClockTime
sourcefn div_assign(&mut self, other: ClockTime)
fn div_assign(&mut self, other: ClockTime)
/=
operation. Read moresourceimpl DivAssign<u64> for ClockTime
impl DivAssign<u64> for ClockTime
sourcefn div_assign(&mut self, other: u64)
fn div_assign(&mut self, other: u64)
/=
operation. Read moresourceimpl FormattedValue for ClockTime
impl FormattedValue for ClockTime
fn get_default_format() -> Format
fn try_from(v: GenericFormattedValue) -> Option<Self>
fn get_format(&self) -> Format
unsafe fn from_raw(format: Format, value: i64) -> Self
unsafe fn to_raw_value(&self) -> i64
sourceimpl From<ClockTime> for GenericFormattedValue
impl From<ClockTime> for GenericFormattedValue
sourcefn from(v: ClockTime) -> GenericFormattedValue
fn from(v: ClockTime) -> GenericFormattedValue
sourceimpl<'a> MulAssign<&'a ClockTime> for ClockTime
impl<'a> MulAssign<&'a ClockTime> for ClockTime
sourcefn mul_assign(&mut self, other: &'a ClockTime)
fn mul_assign(&mut self, other: &'a ClockTime)
*=
operation. Read moresourceimpl<'a> MulAssign<&'a u64> for ClockTime
impl<'a> MulAssign<&'a u64> for ClockTime
sourcefn mul_assign(&mut self, other: &'a u64)
fn mul_assign(&mut self, other: &'a u64)
*=
operation. Read moresourceimpl MulAssign<ClockTime> for ClockTime
impl MulAssign<ClockTime> for ClockTime
sourcefn mul_assign(&mut self, other: ClockTime)
fn mul_assign(&mut self, other: ClockTime)
*=
operation. Read moresourceimpl MulAssign<u64> for ClockTime
impl MulAssign<u64> for ClockTime
sourcefn mul_assign(&mut self, other: u64)
fn mul_assign(&mut self, other: u64)
*=
operation. Read moresourceimpl<'a> MulDiv<&'a ClockTime> for ClockTime
impl<'a> MulDiv<&'a ClockTime> for ClockTime
sourcefn mul_div_floor(self, num: &ClockTime, denom: &ClockTime) -> Option<Self::Output>
fn mul_div_floor(self, num: &ClockTime, denom: &ClockTime) -> Option<Self::Output>
floor(val * num / denom)
, i.e. the largest integer less than or equal to the
result of the division. Read moresourcefn mul_div_round(self, num: &ClockTime, denom: &ClockTime) -> Option<Self::Output>
fn mul_div_round(self, num: &ClockTime, denom: &ClockTime) -> Option<Self::Output>
round(val * num / denom)
, i.e. the closest integer to the result of the
division. If both surrounding integers are the same distance (x.5
), the one with the bigger
absolute value is returned (round away from 0.0). Read moresourceimpl<'a> MulDiv<&'a u64> for ClockTime
impl<'a> MulDiv<&'a u64> for ClockTime
sourcefn mul_div_floor(self, num: &u64, denom: &u64) -> Option<Self::Output>
fn mul_div_floor(self, num: &u64, denom: &u64) -> Option<Self::Output>
floor(val * num / denom)
, i.e. the largest integer less than or equal to the
result of the division. Read moresourcefn mul_div_round(self, num: &u64, denom: &u64) -> Option<Self::Output>
fn mul_div_round(self, num: &u64, denom: &u64) -> Option<Self::Output>
round(val * num / denom)
, i.e. the closest integer to the result of the
division. If both surrounding integers are the same distance (x.5
), the one with the bigger
absolute value is returned (round away from 0.0). Read moresourceimpl MulDiv<ClockTime> for ClockTime
impl MulDiv<ClockTime> for ClockTime
sourcefn mul_div_floor(self, num: ClockTime, denom: ClockTime) -> Option<Self::Output>
fn mul_div_floor(self, num: ClockTime, denom: ClockTime) -> Option<Self::Output>
floor(val * num / denom)
, i.e. the largest integer less than or equal to the
result of the division. Read moresourcefn mul_div_round(self, num: ClockTime, denom: ClockTime) -> Option<Self::Output>
fn mul_div_round(self, num: ClockTime, denom: ClockTime) -> Option<Self::Output>
round(val * num / denom)
, i.e. the closest integer to the result of the
division. If both surrounding integers are the same distance (x.5
), the one with the bigger
absolute value is returned (round away from 0.0). Read moresourceimpl<'a> MulDiv<u64> for ClockTime
impl<'a> MulDiv<u64> for ClockTime
sourcefn mul_div_floor(self, num: u64, denom: u64) -> Option<Self::Output>
fn mul_div_floor(self, num: u64, denom: u64) -> Option<Self::Output>
floor(val * num / denom)
, i.e. the largest integer less than or equal to the
result of the division. Read moresourcefn mul_div_round(self, num: u64, denom: u64) -> Option<Self::Output>
fn mul_div_round(self, num: u64, denom: u64) -> Option<Self::Output>
round(val * num / denom)
, i.e. the closest integer to the result of the
division. If both surrounding integers are the same distance (x.5
), the one with the bigger
absolute value is returned (round away from 0.0). Read moresourceimpl Ord for ClockTime
impl Ord for ClockTime
1.21.0 · sourcefn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 · sourcefn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
sourceimpl PartialOrd<ClockTime> for ClockTime
impl PartialOrd<ClockTime> for ClockTime
sourcefn partial_cmp(&self, other: &ClockTime) -> Option<Ordering>
fn partial_cmp(&self, other: &ClockTime) -> Option<Ordering>
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresourceimpl<'a> RemAssign<&'a ClockTime> for ClockTime
impl<'a> RemAssign<&'a ClockTime> for ClockTime
sourcefn rem_assign(&mut self, other: &'a ClockTime)
fn rem_assign(&mut self, other: &'a ClockTime)
%=
operation. Read moresourceimpl<'a> RemAssign<&'a u64> for ClockTime
impl<'a> RemAssign<&'a u64> for ClockTime
sourcefn rem_assign(&mut self, other: &'a u64)
fn rem_assign(&mut self, other: &'a u64)
%=
operation. Read moresourceimpl RemAssign<ClockTime> for ClockTime
impl RemAssign<ClockTime> for ClockTime
sourcefn rem_assign(&mut self, other: ClockTime)
fn rem_assign(&mut self, other: ClockTime)
%=
operation. Read moresourceimpl RemAssign<u64> for ClockTime
impl RemAssign<u64> for ClockTime
sourcefn rem_assign(&mut self, other: u64)
fn rem_assign(&mut self, other: u64)
%=
operation. Read moresourceimpl<'a> SubAssign<&'a ClockTime> for ClockTime
impl<'a> SubAssign<&'a ClockTime> for ClockTime
sourcefn sub_assign(&mut self, other: &'a ClockTime)
fn sub_assign(&mut self, other: &'a ClockTime)
-=
operation. Read moresourceimpl SubAssign<ClockTime> for ClockTime
impl SubAssign<ClockTime> for ClockTime
sourcefn sub_assign(&mut self, other: ClockTime)
fn sub_assign(&mut self, other: ClockTime)
-=
operation. Read moreimpl Copy for ClockTime
impl Eq for ClockTime
impl SpecificFormattedValue for ClockTime
impl StructuralEq for ClockTime
impl StructuralPartialEq for ClockTime
Auto Trait Implementations
impl RefUnwindSafe for ClockTime
impl Send for ClockTime
impl Sync for ClockTime
impl Unpin for ClockTime
impl UnwindSafe for ClockTime
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<T> ToSendValue for Twhere
T: SetValue + Send + ToValue + ?Sized,
impl<T> ToSendValue for Twhere
T: SetValue + Send + ToValue + ?Sized,
sourcefn to_send_value(&self) -> SendValue
fn to_send_value(&self) -> SendValue
SendValue
clone of self
.