Enum chrono::offset::LocalResult
[−]
[src]
pub enum LocalResult<T> { None, Single(T), Ambiguous(T, T), }
The conversion result from the local time to the timezone-aware datetime types.
Variants
None | Given local time representation is invalid. This can occur when, for example, the positive timezone transition. |
Single | Given local time representation has a single unique result. |
Ambiguous | Given local time representation has multiple results and thus ambiguous. This can occur when, for example, the negative timezone transition. |
Methods
impl<T> LocalResult<T>
fn single(self) -> Option<T>
Returns Some
only when the conversion result is unique, or None
otherwise.
fn earliest(self) -> Option<T>
Returns Some
for the earliest possible conversion result, or None
if none.
fn latest(self) -> Option<T>
Returns Some
for the latest possible conversion result, or None
if none.
fn map<U, F: FnMut(T) -> U>(self, f: F) -> LocalResult<U>
Maps a LocalResult<T>
into LocalResult<U>
with given function.
impl<Tz: TimeZone> LocalResult<Date<Tz>>
fn and_time(self, time: NaiveTime) -> LocalResult<DateTime<Tz>>
Makes a new DateTime
from the current date and given NaiveTime
.
The offset in the current date is preserved.
Propagates any error. Ambiguous result would be discarded.
fn and_hms_opt(self, hour: u32, min: u32, sec: u32) -> LocalResult<DateTime<Tz>>
Makes a new DateTime
from the current date, hour, minute and second.
The offset in the current date is preserved.
Propagates any error. Ambiguous result would be discarded.
fn and_hms_milli_opt(self, hour: u32, min: u32, sec: u32, milli: u32) -> LocalResult<DateTime<Tz>>
Makes a new DateTime
from the current date, hour, minute, second and millisecond.
The millisecond part can exceed 1,000 in order to represent the leap second.
The offset in the current date is preserved.
Propagates any error. Ambiguous result would be discarded.
fn and_hms_micro_opt(self, hour: u32, min: u32, sec: u32, micro: u32) -> LocalResult<DateTime<Tz>>
Makes a new DateTime
from the current date, hour, minute, second and microsecond.
The microsecond part can exceed 1,000,000 in order to represent the leap second.
The offset in the current date is preserved.
Propagates any error. Ambiguous result would be discarded.
fn and_hms_nano_opt(self, hour: u32, min: u32, sec: u32, nano: u32) -> LocalResult<DateTime<Tz>>
Makes a new DateTime
from the current date, hour, minute, second and nanosecond.
The nanosecond part can exceed 1,000,000,000 in order to represent the leap second.
The offset in the current date is preserved.
Propagates any error. Ambiguous result would be discarded.
impl<T: Debug> LocalResult<T>
fn unwrap(self) -> T
Returns the single unique conversion result, or panics accordingly.