pub struct TimezoneId { /* private fields */ }Expand description
A validated time zone, independent of the optional time zone database.
UTC and fixed offsets (+05:45, -03:30, or +00:19:32) work in every
build. IANA names such as America/New_York need the timezones feature,
enabled by default. Unavailable names are rejected rather than approximated.
Implementations§
Source§impl TimezoneId
impl TimezoneId
Sourcepub fn named(name: &str) -> Option<Self>
pub fn named(name: &str) -> Option<Self>
The zone of an IANA name or fixed offset, if available in this build.
Sourcepub fn fixed_offset(seconds: i32) -> Option<Self>
pub fn fixed_offset(seconds: i32) -> Option<Self>
A constant offset east of UTC, in seconds, strictly between -24 and +24 hours. Negative values are west of UTC; fixed offsets have no daylight-saving changes.
Trait Implementations§
Source§impl Clone for TimezoneId
impl Clone for TimezoneId
Source§fn clone(&self) -> TimezoneId
fn clone(&self) -> TimezoneId
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TimezoneId
impl Debug for TimezoneId
Source§impl Default for TimezoneId
impl Default for TimezoneId
Source§impl<'de> Deserialize<'de> for TimezoneId
impl<'de> Deserialize<'de> for TimezoneId
Source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Source§impl Display for TimezoneId
impl Display for TimezoneId
impl Eq for TimezoneId
Source§impl FromStr for TimezoneId
impl FromStr for TimezoneId
Source§impl Hash for TimezoneId
impl Hash for TimezoneId
Source§impl PartialEq for TimezoneId
impl PartialEq for TimezoneId
Source§impl Serialize for TimezoneId
impl Serialize for TimezoneId
impl StructuralPartialEq for TimezoneId
Source§impl TimeZone for TimezoneId
impl TimeZone for TimezoneId
Source§type Offset = TimezoneOffset
type Offset = TimezoneOffset
TimeZone value can be recovered via TimeZone::from_offset.Source§fn from_offset(offset: &Self::Offset) -> Self
fn from_offset(offset: &Self::Offset) -> Self
Source§fn offset_from_local_date(
&self,
_local: &NaiveDate,
) -> LocalResult<Self::Offset>
fn offset_from_local_date( &self, _local: &NaiveDate, ) -> LocalResult<Self::Offset>
NaiveDate if possible.Source§fn offset_from_local_datetime(
&self,
_local: &NaiveDateTime,
) -> LocalResult<Self::Offset>
fn offset_from_local_datetime( &self, _local: &NaiveDateTime, ) -> LocalResult<Self::Offset>
NaiveDateTime if possible.Source§fn offset_from_utc_date(&self, _utc: &NaiveDate) -> Self::Offset
fn offset_from_utc_date(&self, _utc: &NaiveDate) -> Self::Offset
NaiveDate. This cannot fail.Source§fn offset_from_utc_datetime(&self, _utc: &NaiveDateTime) -> Self::Offset
fn offset_from_utc_datetime(&self, _utc: &NaiveDateTime) -> Self::Offset
NaiveDateTime. This cannot fail.Source§fn with_ymd_and_hms(
&self,
year: i32,
month: u32,
day: u32,
hour: u32,
min: u32,
sec: u32,
) -> LocalResult<DateTime<Self>>
fn with_ymd_and_hms( &self, year: i32, month: u32, day: u32, hour: u32, min: u32, sec: u32, ) -> LocalResult<DateTime<Self>>
DateTime from year, month, day, time components and current time zone. Read moreSource§fn ymd(&self, year: i32, month: u32, day: u32) -> Date<Self>
fn ymd(&self, year: i32, month: u32, day: u32) -> Date<Self>
use with_ymd_and_hms() instead
Date from year, month, day and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn ymd_opt(&self, year: i32, month: u32, day: u32) -> LocalResult<Date<Self>>
fn ymd_opt(&self, year: i32, month: u32, day: u32) -> LocalResult<Date<Self>>
use with_ymd_and_hms() instead
Date from year, month, day and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn yo(&self, year: i32, ordinal: u32) -> Date<Self>
fn yo(&self, year: i32, ordinal: u32) -> Date<Self>
use from_local_datetime() with a NaiveDateTime instead
Date from year, day of year (DOY or “ordinal”) and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn yo_opt(&self, year: i32, ordinal: u32) -> LocalResult<Date<Self>>
fn yo_opt(&self, year: i32, ordinal: u32) -> LocalResult<Date<Self>>
use from_local_datetime() with a NaiveDateTime instead
Date from year, day of year (DOY or “ordinal”) and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn isoywd(&self, year: i32, week: u32, weekday: Weekday) -> Date<Self>
fn isoywd(&self, year: i32, week: u32, weekday: Weekday) -> Date<Self>
use from_local_datetime() with a NaiveDateTime instead
Date from ISO week date (year and week number), day of the week (DOW) and
the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE.
The resulting Date may have a different year from the input year. Read moreSource§fn isoywd_opt(
&self,
year: i32,
week: u32,
weekday: Weekday,
) -> LocalResult<Date<Self>>
fn isoywd_opt( &self, year: i32, week: u32, weekday: Weekday, ) -> LocalResult<Date<Self>>
use from_local_datetime() with a NaiveDateTime instead
Date from ISO week date (year and week number), day of the week (DOW) and
the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE.
The resulting Date may have a different year from the input year. Read moreSource§fn timestamp(&self, secs: i64, nsecs: u32) -> DateTime<Self>
fn timestamp(&self, secs: i64, nsecs: u32) -> DateTime<Self>
use timestamp_opt() instead
DateTime from the number of non-leap seconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”)
and the number of nanoseconds since the last whole non-leap second. Read moreSource§fn timestamp_opt(&self, secs: i64, nsecs: u32) -> LocalResult<DateTime<Self>>
fn timestamp_opt(&self, secs: i64, nsecs: u32) -> LocalResult<DateTime<Self>>
DateTime from the number of non-leap seconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”)
and the number of nanoseconds since the last whole non-leap second. Read moreSource§fn timestamp_millis(&self, millis: i64) -> DateTime<Self>
fn timestamp_millis(&self, millis: i64) -> DateTime<Self>
use timestamp_millis_opt() instead
DateTime from the number of non-leap milliseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn timestamp_millis_opt(&self, millis: i64) -> LocalResult<DateTime<Self>>
fn timestamp_millis_opt(&self, millis: i64) -> LocalResult<DateTime<Self>>
DateTime from the number of non-leap milliseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn timestamp_nanos(&self, nanos: i64) -> DateTime<Self>
fn timestamp_nanos(&self, nanos: i64) -> DateTime<Self>
DateTime from the number of non-leap nanoseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn timestamp_micros(&self, micros: i64) -> LocalResult<DateTime<Self>>
fn timestamp_micros(&self, micros: i64) -> LocalResult<DateTime<Self>>
DateTime from the number of non-leap microseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn datetime_from_str(
&self,
s: &str,
fmt: &str,
) -> Result<DateTime<Self>, ParseError>
fn datetime_from_str( &self, s: &str, fmt: &str, ) -> Result<DateTime<Self>, ParseError>
use DateTime::parse_from_str or NaiveDateTime::parse_from_str with and_utc() or and_local_timezone() instead
DateTime with the current offset. Read moreSource§fn from_local_date(&self, local: &NaiveDate) -> LocalResult<Date<Self>>
fn from_local_date(&self, local: &NaiveDate) -> LocalResult<Date<Self>>
use from_local_datetime() instead
NaiveDate to the timezone-aware Date if possible.Source§fn from_local_datetime(
&self,
local: &NaiveDateTime,
) -> LocalResult<DateTime<Self>>
fn from_local_datetime( &self, local: &NaiveDateTime, ) -> LocalResult<DateTime<Self>>
NaiveDateTime to the timezone-aware DateTime if possible.Source§fn from_utc_date(&self, utc: &NaiveDate) -> Date<Self>
fn from_utc_date(&self, utc: &NaiveDate) -> Date<Self>
use from_utc_datetime() instead
NaiveDate to the local time.
The UTC is continuous and thus this cannot fail (but can give the duplicate local time).Source§fn from_utc_datetime(&self, utc: &NaiveDateTime) -> DateTime<Self>
fn from_utc_datetime(&self, utc: &NaiveDateTime) -> DateTime<Self>
NaiveDateTime to the local time.
The UTC is continuous and thus this cannot fail (but can give the duplicate local time).Auto Trait Implementations§
impl Freeze for TimezoneId
impl RefUnwindSafe for TimezoneId
impl Send for TimezoneId
impl Sync for TimezoneId
impl Unpin for TimezoneId
impl UnsafeUnpin for TimezoneId
impl UnwindSafe for TimezoneId
Blanket Implementations§
impl<T> AsId for T
impl<T> AsIdSalt for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
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> ⓘ
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> ⓘ
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