pub struct Duration { /* private fields */ }
Expand description
ISO 8601 time duration with nanosecond precision. This also allows for the negative duration; see individual methods for details.
Implementations§
Source§impl Duration
impl Duration
Sourcepub fn weeks(weeks: i64) -> Duration
pub fn weeks(weeks: i64) -> Duration
Makes a new Duration
with given number of weeks.
Equivalent to Duration::seconds(weeks * 7 * 24 * 60 * 60)
with overflow checks.
Panics when the duration is out of bounds.
Sourcepub fn days(days: i64) -> Duration
pub fn days(days: i64) -> Duration
Makes a new Duration
with given number of days.
Equivalent to Duration::seconds(days * 24 * 60 * 60)
with overflow checks.
Panics when the duration is out of bounds.
Sourcepub fn hours(hours: i64) -> Duration
pub fn hours(hours: i64) -> Duration
Makes a new Duration
with given number of hours.
Equivalent to Duration::seconds(hours * 60 * 60)
with overflow checks.
Panics when the duration is out of bounds.
Sourcepub fn minutes(minutes: i64) -> Duration
pub fn minutes(minutes: i64) -> Duration
Makes a new Duration
with given number of minutes.
Equivalent to Duration::seconds(minutes * 60)
with overflow checks.
Panics when the duration is out of bounds.
Sourcepub fn seconds(seconds: i64) -> Duration
pub fn seconds(seconds: i64) -> Duration
Makes a new Duration
with given number of seconds.
Panics when the duration is more than i64::MAX
milliseconds
or less than i64::MIN
milliseconds.
Sourcepub fn milliseconds(milliseconds: i64) -> Duration
pub fn milliseconds(milliseconds: i64) -> Duration
Makes a new Duration
with given number of milliseconds.
Sourcepub fn microseconds(microseconds: i64) -> Duration
pub fn microseconds(microseconds: i64) -> Duration
Makes a new Duration
with given number of microseconds.
Sourcepub fn nanoseconds(nanos: i64) -> Duration
pub fn nanoseconds(nanos: i64) -> Duration
Makes a new Duration
with given number of nanoseconds.
Sourcepub fn span<F>(f: F) -> Durationwhere
F: FnOnce(),
pub fn span<F>(f: F) -> Durationwhere
F: FnOnce(),
Runs a closure, returning the duration of time it took to run the closure.
Sourcepub fn num_minutes(&self) -> i64
pub fn num_minutes(&self) -> i64
Returns the total number of whole minutes in the duration.
Sourcepub fn num_seconds(&self) -> i64
pub fn num_seconds(&self) -> i64
Returns the total number of whole seconds in the duration.
Sourcepub fn num_milliseconds(&self) -> i64
pub fn num_milliseconds(&self) -> i64
Returns the total number of whole milliseconds in the duration,
Sourcepub fn num_microseconds(&self) -> Option<i64>
pub fn num_microseconds(&self) -> Option<i64>
Returns the total number of whole microseconds in the duration,
or None
on overflow (exceeding 263 microseconds in either direction).
Sourcepub fn num_nanoseconds(&self) -> Option<i64>
pub fn num_nanoseconds(&self) -> Option<i64>
Returns the total number of whole nanoseconds in the duration,
or None
on overflow (exceeding 263 nanoseconds in either direction).
Sourcepub fn checked_add(&self, rhs: &Duration) -> Option<Duration>
pub fn checked_add(&self, rhs: &Duration) -> Option<Duration>
Add two durations, returning None
if overflow occurred.
Sourcepub fn checked_sub(&self, rhs: &Duration) -> Option<Duration>
pub fn checked_sub(&self, rhs: &Duration) -> Option<Duration>
Subtract two durations, returning None
if overflow occurred.
Sourcepub fn zero() -> Duration
pub fn zero() -> Duration
A duration where the stored seconds and nanoseconds are equal to zero.
Sourcepub fn from_std(duration: Duration) -> Result<Duration, OutOfRangeError>
pub fn from_std(duration: Duration) -> Result<Duration, OutOfRangeError>
Creates a time::Duration
object from std::time::Duration
This function errors when original duration is larger than the maximum value supported for this type.
Sourcepub fn to_std(&self) -> Result<Duration, OutOfRangeError>
pub fn to_std(&self) -> Result<Duration, OutOfRangeError>
Creates a std::time::Duration
object from time::Duration
This function errors when duration is less than zero. As standard library implementation is limited to non-negative values.
Trait Implementations§
Source§impl Add<Duration> for SteadyTime
impl Add<Duration> for SteadyTime
Source§type Output = SteadyTime
type Output = SteadyTime
+
operator.Source§impl Ord for Duration
impl Ord for Duration
Source§impl PartialOrd for Duration
impl PartialOrd for Duration
Source§impl Sub<Duration> for SteadyTime
impl Sub<Duration> for SteadyTime
Source§type Output = SteadyTime
type Output = SteadyTime
-
operator.