Skip to main content

FixedOffset

Struct FixedOffset 

Source
pub struct FixedOffset { /* private fields */ }
Expand description

The time zone with fixed offset, from UTC-23:59:59 to UTC+23:59:59.

Using the TimeZone methods on a FixedOffset struct is the preferred way to construct DateTime<FixedOffset> instances. See the east_opt and west_opt methods for examples.

Implementations§

Source§

impl FixedOffset

Source

pub fn east(secs: i32) -> FixedOffset

👎Deprecated since 0.4.23:

use east_opt() instead

Makes a new FixedOffset for the Eastern Hemisphere with given timezone difference. The negative secs means the Western Hemisphere.

Panics on the out-of-bound secs.

Source

pub const fn east_opt(secs: i32) -> Option<FixedOffset>

Makes a new FixedOffset for the Eastern Hemisphere with given timezone difference. The negative secs means the Western Hemisphere.

Returns None on the out-of-bound secs.

§Example
use chrono::{FixedOffset, TimeZone};
let hour = 3600;
let datetime =
    FixedOffset::east_opt(5 * hour).unwrap().with_ymd_and_hms(2016, 11, 08, 0, 0, 0).unwrap();
assert_eq!(&datetime.to_rfc3339(), "2016-11-08T00:00:00+05:00")
Source

pub fn west(secs: i32) -> FixedOffset

👎Deprecated since 0.4.23:

use west_opt() instead

Makes a new FixedOffset for the Western Hemisphere with given timezone difference. The negative secs means the Eastern Hemisphere.

Panics on the out-of-bound secs.

Source

pub const fn west_opt(secs: i32) -> Option<FixedOffset>

Makes a new FixedOffset for the Western Hemisphere with given timezone difference. The negative secs means the Eastern Hemisphere.

Returns None on the out-of-bound secs.

§Example
use chrono::{FixedOffset, TimeZone};
let hour = 3600;
let datetime =
    FixedOffset::west_opt(5 * hour).unwrap().with_ymd_and_hms(2016, 11, 08, 0, 0, 0).unwrap();
assert_eq!(&datetime.to_rfc3339(), "2016-11-08T00:00:00-05:00")
Source

pub const fn local_minus_utc(&self) -> i32

Returns the number of seconds to add to convert from UTC to the local time.

Source

pub const fn utc_minus_local(&self) -> i32

Returns the number of seconds to add to convert from the local time to UTC.

Trait Implementations§

Source§

impl<Tz: TimeZone> Add<FixedOffset> for DateTime<Tz>

Add FixedOffset to the datetime value of DateTime (offset remains unchanged).

§Panics

Panics if the resulting date would be out of range.

Source§

type Output = DateTime<Tz>

The resulting type after applying the + operator.
Source§

fn add(self, rhs: FixedOffset) -> DateTime<Tz>

Performs the + operation. Read more
Source§

impl Add<FixedOffset> for NaiveDateTime

Add FixedOffset to NaiveDateTime.

§Panics

Panics if the resulting date would be out of range. Consider using checked_add_offset to get an Option instead.

Source§

type Output = NaiveDateTime

The resulting type after applying the + operator.
Source§

fn add(self, rhs: FixedOffset) -> NaiveDateTime

Performs the + operation. Read more
Source§

impl Add<FixedOffset> for NaiveTime

Add FixedOffset to NaiveTime.

This wraps around and never overflows or underflows. In particular the addition ignores integral number of days.

Source§

type Output = NaiveTime

The resulting type after applying the + operator.
Source§

fn add(self, rhs: FixedOffset) -> NaiveTime

Performs the + operation. Read more
Source§

impl Clone for FixedOffset

Source§

fn clone(&self) -> FixedOffset

Returns a duplicate of the value. Read more
1.0.0 (const: unstable)§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for FixedOffset

Source§

impl Debug for FixedOffset

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for FixedOffset

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for FixedOffset

Source§

impl FromStr for FixedOffset

Parsing a str into a FixedOffset uses the format %z.

Source§

type Err = ParseError

The associated error which can be returned from parsing.
Source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
Source§

impl Hash for FixedOffset

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given [Hasher]. Read more
1.3.0§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given [Hasher]. Read more
Source§

impl Offset for FixedOffset

Source§

fn fix(&self) -> FixedOffset

Returns the fixed offset from UTC to the local time stored.
Source§

impl PartialEq for FixedOffset

Source§

fn eq(&self, other: &FixedOffset) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable)§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for FixedOffset

Source§

impl<Tz: TimeZone> Sub<FixedOffset> for DateTime<Tz>

Subtract FixedOffset from the datetime value of DateTime (offset remains unchanged).

§Panics

Panics if the resulting date would be out of range.

Source§

type Output = DateTime<Tz>

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: FixedOffset) -> DateTime<Tz>

Performs the - operation. Read more
Source§

impl Sub<FixedOffset> for NaiveDateTime

Subtract FixedOffset from NaiveDateTime.

§Panics

Panics if the resulting date would be out of range. Consider using checked_sub_offset to get an Option instead.

Source§

type Output = NaiveDateTime

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: FixedOffset) -> NaiveDateTime

Performs the - operation. Read more
Source§

impl Sub<FixedOffset> for NaiveTime

Subtract FixedOffset from NaiveTime.

This wraps around and never overflows or underflows. In particular the subtraction ignores integral number of days.

Source§

type Output = NaiveTime

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: FixedOffset) -> NaiveTime

Performs the - operation. Read more
Source§

impl TimeZone for FixedOffset

Source§

type Offset = FixedOffset

An associated offset type. This type is used to store the actual offset in date and time types. The original TimeZone value can be recovered via TimeZone::from_offset.
Source§

fn from_offset(offset: &FixedOffset) -> FixedOffset

Reconstructs the time zone from the offset.
Source§

fn offset_from_local_date( &self, _local: &NaiveDate, ) -> MappedLocalTime<FixedOffset>

Creates the offset(s) for given local NaiveDate if possible.
Source§

fn offset_from_local_datetime( &self, _local: &NaiveDateTime, ) -> MappedLocalTime<FixedOffset>

Creates the offset(s) for given local NaiveDateTime if possible.
Source§

fn offset_from_utc_date(&self, _utc: &NaiveDate) -> FixedOffset

Creates the offset for given UTC NaiveDate. This cannot fail.
Source§

fn offset_from_utc_datetime(&self, _utc: &NaiveDateTime) -> FixedOffset

Creates the offset for given UTC NaiveDateTime. This cannot fail.
Source§

fn with_ymd_and_hms( &self, year: i32, month: u32, day: u32, hour: u32, min: u32, sec: u32, ) -> MappedLocalTime<DateTime<Self>>

Make a new DateTime from year, month, day, time components and current time zone. Read more
Source§

fn ymd(&self, year: i32, month: u32, day: u32) -> Date<Self>

👎Deprecated since 0.4.23:

use with_ymd_and_hms() instead

Makes a new Date from year, month, day and the current time zone. This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read more
Source§

fn ymd_opt( &self, year: i32, month: u32, day: u32, ) -> MappedLocalTime<Date<Self>>

👎Deprecated since 0.4.23:

use with_ymd_and_hms() instead

Makes a new Date from year, month, day and the current time zone. This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read more
Source§

fn yo(&self, year: i32, ordinal: u32) -> Date<Self>

👎Deprecated since 0.4.23:

use from_local_datetime() with a NaiveDateTime instead

Makes a new 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 more
Source§

fn yo_opt(&self, year: i32, ordinal: u32) -> MappedLocalTime<Date<Self>>

👎Deprecated since 0.4.23:

use from_local_datetime() with a NaiveDateTime instead

Makes a new 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 more
Source§

fn isoywd(&self, year: i32, week: u32, weekday: Weekday) -> Date<Self>

👎Deprecated since 0.4.23:

use from_local_datetime() with a NaiveDateTime instead

Makes a new 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 more
Source§

fn isoywd_opt( &self, year: i32, week: u32, weekday: Weekday, ) -> MappedLocalTime<Date<Self>>

👎Deprecated since 0.4.23:

use from_local_datetime() with a NaiveDateTime instead

Makes a new 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 more
Source§

fn timestamp(&self, secs: i64, nsecs: u32) -> DateTime<Self>

👎Deprecated since 0.4.23:

use timestamp_opt() instead

Makes a new 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 more
Source§

fn timestamp_opt( &self, secs: i64, nsecs: u32, ) -> MappedLocalTime<DateTime<Self>>

Makes a new 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 more
Source§

fn timestamp_millis(&self, millis: i64) -> DateTime<Self>

👎Deprecated since 0.4.23:

use timestamp_millis_opt() instead

Makes a new DateTime from the number of non-leap milliseconds since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read more
Source§

fn timestamp_millis_opt(&self, millis: i64) -> MappedLocalTime<DateTime<Self>>

Makes a new DateTime from the number of non-leap milliseconds since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read more
Source§

fn timestamp_nanos(&self, nanos: i64) -> DateTime<Self>

Makes a new DateTime from the number of non-leap nanoseconds since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read more
Source§

fn timestamp_micros(&self, micros: i64) -> MappedLocalTime<DateTime<Self>>

Makes a new DateTime from the number of non-leap microseconds since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read more
Source§

fn datetime_from_str(&self, s: &str, fmt: &str) -> ParseResult<DateTime<Self>>

👎Deprecated since 0.4.29:

use DateTime::parse_from_str or NaiveDateTime::parse_from_str with and_utc() or and_local_timezone() instead

Parses a string with the specified format string and returns a DateTime with the current offset. Read more
Source§

fn from_local_date(&self, local: &NaiveDate) -> MappedLocalTime<Date<Self>>

👎Deprecated since 0.4.23:

use from_local_datetime() instead

Converts the local NaiveDate to the timezone-aware Date if possible.
Source§

fn from_local_datetime( &self, local: &NaiveDateTime, ) -> MappedLocalTime<DateTime<Self>>

Converts the local NaiveDateTime to the timezone-aware DateTime if possible.
Source§

fn from_utc_date(&self, utc: &NaiveDate) -> Date<Self>

👎Deprecated since 0.4.23:

use from_utc_datetime() instead

Converts the UTC 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>

Converts the UTC 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 FixedOffset

§

impl RefUnwindSafe for FixedOffset

§

impl Send for FixedOffset

§

impl Sync for FixedOffset

§

impl Unpin for FixedOffset

§

impl UnsafeUnpin for FixedOffset

§

impl UnwindSafe for FixedOffset

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.