Skip to main content

TimeZone

Trait TimeZone 

Source
pub trait TimeZone {
    // Required method
    fn at(&self, unix_seconds: i64) -> (i32, &str);

    // Provided methods
    fn next_change(&self, unix_seconds: i64) -> (i32, Option<(i64, i32)>) { ... }
    fn abbrev_meaning(&self, _abbrev: &str) -> Option<AbbrevMeaning> { ... }
    fn abbrev_at(
        &self,
        _abbrev: &str,
        _unix_seconds: i64,
    ) -> Option<(i32, bool)> { ... }
    fn fixed_offset(&self) -> Option<i32> { ... }
    fn abbrevs(&self) -> Vec<&str> { ... }
}
Expand description

The rules of a time zone: the offset east of UTC in seconds and the abbreviation, at an instant in seconds since 1970-01-01 UTC, as pg_localtime gives them.

Required Methods§

Source

fn at(&self, unix_seconds: i64) -> (i32, &str)

Provided Methods§

Source

fn next_change(&self, unix_seconds: i64) -> (i32, Option<(i64, i32)>)

The offset east of UTC before the first change of the rules after an instant, and the instant and the offset of that change, as pg_next_dst_boundary gives them.

Source

fn abbrev_meaning(&self, _abbrev: &str) -> Option<AbbrevMeaning>

The meaning of an abbreviation in upper case in this zone over all of its history, as pg_timezone_abbrev_is_known gives it.

Source

fn abbrev_at(&self, _abbrev: &str, _unix_seconds: i64) -> Option<(i32, bool)>

The offset east of UTC and the daylight saving flag of an abbreviation in upper case at an instant, as pg_interpret_timezone_abbrev gives them.

Source

fn fixed_offset(&self) -> Option<i32>

The offset east of UTC if the zone has one offset at all instants, as pg_get_timezone_offset gives it.

Source

fn abbrevs(&self) -> Vec<&str>

The abbreviations that the zone uses, in the order of pg_get_next_timezone_abbrev.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<T: TimeZone + ?Sized> TimeZone for Arc<T>

Source§

fn at(&self, unix_seconds: i64) -> (i32, &str)

Source§

fn next_change(&self, unix_seconds: i64) -> (i32, Option<(i64, i32)>)

Source§

fn abbrev_meaning(&self, abbrev: &str) -> Option<AbbrevMeaning>

Source§

fn abbrev_at(&self, abbrev: &str, unix_seconds: i64) -> Option<(i32, bool)>

Source§

fn fixed_offset(&self) -> Option<i32>

Source§

fn abbrevs(&self) -> Vec<&str>

Implementors§