pub struct OffsetArithmetic { /* private fields */ }
Expand description
Options for Offset::checked_add
and Offset::checked_sub
.
This type provides a way to ergonomically add one of a few different
duration types to a Offset
.
The main way to construct values of this type is with its From
trait
implementations:
From<Span> for OffsetArithmetic
adds (or subtracts) the given span to the receiver offset.From<SignedDuration> for OffsetArithmetic
adds (or subtracts) the given signed duration to the receiver offset.From<std::time::Duration> for OffsetArithmetic
adds (or subtracts) the given unsigned duration to the receiver offset.
§Example
use std::time::Duration;
use jiff::{tz::offset, SignedDuration, ToSpan};
let off = offset(-10);
assert_eq!(off.checked_add(11.hours())?, offset(1));
assert_eq!(off.checked_add(SignedDuration::from_hours(11))?, offset(1));
assert_eq!(off.checked_add(Duration::from_secs(11 * 60 * 60))?, offset(1));
Trait Implementations§
Source§impl Clone for OffsetArithmetic
impl Clone for OffsetArithmetic
Source§fn clone(&self) -> OffsetArithmetic
fn clone(&self) -> OffsetArithmetic
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 OffsetArithmetic
impl Debug for OffsetArithmetic
Source§impl<'a> From<&'a Duration> for OffsetArithmetic
impl<'a> From<&'a Duration> for OffsetArithmetic
Source§fn from(udur: &'a Duration) -> OffsetArithmetic
fn from(udur: &'a Duration) -> OffsetArithmetic
Converts to this type from the input type.
Source§impl<'a> From<&'a SignedDuration> for OffsetArithmetic
impl<'a> From<&'a SignedDuration> for OffsetArithmetic
Source§fn from(sdur: &'a SignedDuration) -> OffsetArithmetic
fn from(sdur: &'a SignedDuration) -> OffsetArithmetic
Converts to this type from the input type.
Source§impl<'a> From<&'a Span> for OffsetArithmetic
impl<'a> From<&'a Span> for OffsetArithmetic
Source§fn from(span: &'a Span) -> OffsetArithmetic
fn from(span: &'a Span) -> OffsetArithmetic
Converts to this type from the input type.
Source§impl From<Duration> for OffsetArithmetic
impl From<Duration> for OffsetArithmetic
Source§fn from(udur: Duration) -> OffsetArithmetic
fn from(udur: Duration) -> OffsetArithmetic
Converts to this type from the input type.
Source§impl From<SignedDuration> for OffsetArithmetic
impl From<SignedDuration> for OffsetArithmetic
Source§fn from(sdur: SignedDuration) -> OffsetArithmetic
fn from(sdur: SignedDuration) -> OffsetArithmetic
Converts to this type from the input type.
Source§impl From<Span> for OffsetArithmetic
impl From<Span> for OffsetArithmetic
Source§fn from(span: Span) -> OffsetArithmetic
fn from(span: Span) -> OffsetArithmetic
Converts to this type from the input type.
impl Copy for OffsetArithmetic
Auto Trait Implementations§
impl Freeze for OffsetArithmetic
impl RefUnwindSafe for OffsetArithmetic
impl Send for OffsetArithmetic
impl Sync for OffsetArithmetic
impl Unpin for OffsetArithmetic
impl UnwindSafe for OffsetArithmetic
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§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