# Struct chrono::offset::FixedOffset [−] [src]

    pub struct FixedOffset { /* fields omitted */ }

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` and `west` methods for examples.

## Implementations

### `impl FixedOffset` [src]

#### `pub fn east(secs: i32) -> FixedOffset` [src]

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`.

# Example

    use chrono::{FixedOffset, TimeZone};
    let hour = 3600;
    let datetime = FixedOffset::east(5 * hour).ymd(2016, 11, 08)
                                              .and_hms(0, 0, 0);
    assert_eq!(&datetime.to_rfc3339(), "2016-11-08T00:00:00+05:00")

#### `pub fn east_opt(secs: i32) -> Option<FixedOffset>` [src]

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`.

#### `pub fn west(secs: i32) -> FixedOffset` [src]

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`.

# Example

    use chrono::{FixedOffset, TimeZone};
    let hour = 3600;
    let datetime = FixedOffset::west(5 * hour).ymd(2016, 11, 08)
                                              .and_hms(0, 0, 0);
    assert_eq!(&datetime.to_rfc3339(), "2016-11-08T00:00:00-05:00")

#### `pub fn west_opt(secs: i32) -> Option<FixedOffset>` [src]

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`.

#### `pub fn local_minus_utc(&self) -> i32` [src]

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

#### `pub fn utc_minus_local(&self) -> i32` [src]

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

## Trait Implementations

### `impl Add<FixedOffset> for NaiveTime` [src]

#### `type Output = NaiveTime`

The resulting type after applying the `+` operator.

#### `fn add(self, rhs: FixedOffset) -> NaiveTime` [src]

Performs the `+` operation. Read more

### `impl Add<FixedOffset> for NaiveDateTime` [src]

#### `type Output = NaiveDateTime`

The resulting type after applying the `+` operator.

#### `fn add(self, rhs: FixedOffset) -> NaiveDateTime` [src]

Performs the `+` operation. Read more

### `impl<Tz: TimeZone> Add<FixedOffset> for DateTime<Tz>` [src]

#### `type Output = DateTime<Tz>`

The resulting type after applying the `+` operator.

#### `fn add(self, rhs: FixedOffset) -> DateTime<Tz>` [src]

Performs the `+` operation. Read more

### `impl Clone for FixedOffset` [src]

#### `fn clone(&self) -> FixedOffset` [src]

Returns a copy of the value. Read more

#### `pub fn clone_from(&mut self, source: &Self)`1.0.0 [src]

Performs copy-assignment from `source`. Read more

### `impl Copy for FixedOffset` [src]

### `impl Debug for FixedOffset` [src]

#### `fn fmt(&self, f: &mut Formatter<'_>) -> Result` [src]

Formats the value using the given formatter. Read more

### `impl Display for FixedOffset` [src]

#### `fn fmt(&self, f: &mut Formatter<'_>) -> Result` [src]

Formats the value using the given formatter. Read more

### `impl Eq for FixedOffset` [src]

### `impl Hash for FixedOffset` [src]

#### `fn hash<__H: Hasher>(&self, state: &mut __H)` [src]

Feeds this value into the given `Hasher`. Read more

#### `pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,` 1.3.0 [src]

Feeds a slice of this type into the given `Hasher`. Read more

### `impl Offset for FixedOffset` [src]

#### `fn fix(&self) -> FixedOffset` [src]

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

### `impl PartialEq<FixedOffset> for FixedOffset` [src]

#### `fn eq(&self, other: &FixedOffset) -> bool` [src]

This method tests for `self` and `other` values to be equal, and is used by `==`. Read more

#### `fn ne(&self, other: &FixedOffset) -> bool` [src]

This method tests for `!=`.

### `impl StructuralEq for FixedOffset` [src]

### `impl StructuralPartialEq for FixedOffset` [src]

### `impl Sub<FixedOffset> for NaiveTime` [src]

#### `type Output = NaiveTime`

The resulting type after applying the `-` operator.

#### `fn sub(self, rhs: FixedOffset) -> NaiveTime` [src]

Performs the `-` operation. Read more

### `impl Sub<FixedOffset> for NaiveDateTime` [src]

#### `type Output = NaiveDateTime`

The resulting type after applying the `-` operator.

#### `fn sub(self, rhs: FixedOffset) -> NaiveDateTime` [src]

Performs the `-` operation. Read more

### `impl<Tz: TimeZone> Sub<FixedOffset> for DateTime<Tz>` [src]

#### `type Output = DateTime<Tz>`

The resulting type after applying the `-` operator.

#### `fn sub(self, rhs: FixedOffset) -> DateTime<Tz>` [src]

Performs the `-` operation. Read more

### `impl TimeZone for FixedOffset` [src]

#### `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`. Read more

#### `fn from_offset(offset: &FixedOffset) -> FixedOffset` [src]

Reconstructs the time zone from the offset.

#### `fn offset_from_local_date(&self, _local: &NaiveDate) -> LocalResult<FixedOffset>` [src]

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

#### `fn offset_from_local_datetime(
&self,
_local: &NaiveDateTime
) -> LocalResult<FixedOffset>` [src]

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

#### `fn offset_from_utc_date(&self, _utc: &NaiveDate) -> FixedOffset` [src]

Creates the offset for given UTC `NaiveDate`. This cannot fail.

#### `fn offset_from_utc_datetime(&self, _utc: &NaiveDateTime) -> FixedOffset` [src]

Creates the offset for given UTC `NaiveDateTime`. This cannot fail.

#### `fn ymd(&self, year: i32, month: u32, day: u32) -> Date<Self>` [src]

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

#### `fn ymd_opt(&self, year: i32, month: u32, day: u32) -> LocalResult<Date<Self>>` [src]

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

#### `fn yo(&self, year: i32, ordinal: u32) -> Date<Self>` [src]

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

#### `fn yo_opt(&self, year: i32, ordinal: u32) -> LocalResult<Date<Self>>` [src]

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

#### `fn isoywd(&self, year: i32, week: u32, weekday: Weekday) -> Date<Self>` [src]

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

#### `fn isoywd_opt(
&self,
year: i32,
week: u32,
weekday: Weekday
) -> LocalResult<Date<Self>>` [src]

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

#### `fn timestamp(&self, secs: i64, nsecs: u32) -> DateTime<Self>` [src]

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

#### `fn timestamp_opt(&self, secs: i64, nsecs: u32) -> LocalResult<DateTime<Self>>` [src]

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

#### `fn timestamp_millis(&self, millis: i64) -> DateTime<Self>` [src]

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

#### `fn timestamp_millis_opt(&self, millis: i64) -> LocalResult<DateTime<Self>>` [src]

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

#### `fn timestamp_nanos(&self, nanos: i64) -> DateTime<Self>` [src]

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

#### `fn datetime_from_str(&self, s: &str, fmt: &str) -> ParseResult<DateTime<Self>>` [src]

Parses a string with the specified format string and returns a `DateTime` with the current offset. See the `format::strftime` module on the supported escape sequences. Read more

#### `fn from_local_date(&self, local: &NaiveDate) -> LocalResult<Date<Self>>` [src]

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

#### `fn from_local_datetime(
&self,
local: &NaiveDateTime
) -> LocalResult<DateTime<Self>>` [src]

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

#### `fn from_utc_date(&self, utc: &NaiveDate) -> Date<Self>` [src]

Converts the UTC `NaiveDate` to the local time. The UTC is continuous and thus this cannot fail (but can give the duplicate local time). Read more

#### `fn from_utc_datetime(&self, utc: &NaiveDateTime) -> DateTime<Self>` [src]

Converts the UTC `NaiveDateTime` to the local time. The UTC is continuous and thus this cannot fail (but can give the duplicate local time). Read more

## Auto Trait Implementations

### `impl RefUnwindSafe for FixedOffset`

### `impl Send for FixedOffset`

### `impl Sync for FixedOffset`

### `impl Unpin for FixedOffset`

### `impl UnwindSafe for FixedOffset`

## Blanket Implementations

### `impl<T> Any for T where
T: 'static + ?Sized,` [src]

#### `pub fn type_id(&self) -> TypeId` [src]

Gets the `TypeId` of `self`. Read more

### `impl<T> Borrow<T> for T where
T: ?Sized,` [src]

#### `pub fn borrow(&self) -> &T` [src]

Immutably borrows from an owned value. Read more

### `impl<T> BorrowMut<T> for T where
T: ?Sized,` [src]

#### `pub fn borrow_mut(&mut self) -> &mut T` [src]

Mutably borrows from an owned value. Read more

### `impl<T> From<T> for T` [src]

#### `pub fn from(t: T) -> T` [src]

Performs the conversion.

### `impl<T, U> Into<U> for T where
U: From<T>,` [src]

#### `pub fn into(self) -> U` [src]

Performs the conversion.

### `impl<T> ToOwned for T where
T: Clone,` [src]

#### `type Owned = T`

The resulting type after obtaining ownership.

#### `pub fn to_owned(&self) -> T` [src]

Creates owned data from borrowed data, usually by cloning. Read more

#### `pub fn clone_into(&self, target: &mut T)` [src]

🔬 This is a nightly-only experimental API. (`toowned_clone_into`)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

### `impl<T> ToString for T where
T: Display + ?Sized,` [src]

#### `pub default fn to_string(&self) -> String` [src]

Converts the given value to a `String`. Read more

### `impl<T, U> TryFrom<U> for T where
U: Into<T>,` [src]

#### `type Error = Infallible`

The type returned in the event of a conversion error.

#### `pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>` [src]

Performs the conversion.

### `impl<T, U> TryInto<U> for T where
U: TryFrom<T>,` [src]

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

The type returned in the event of a conversion error.

#### `pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>` [src]

Performs the conversion.