[][src]Struct hourglass::Timespec

pub struct Timespec { /* fields omitted */ }

An offset from the Unix Epoch.

Timespec is the building block of Datetime and can be converted from and to a Datetime. It is intrinsically expressed in the UTC timezone since it holds the number of seconds elapsed since the Unix Epoch 1970-01-01T00:00:00Z and therefore is not ambiguous.

It is equivalent to a Datetime without Timezone information and therefore does not have access to as much methods as its counterpart. For example, its date representation cannot be computed. In return, the type is simpler and easier to handle and move around. Like Datetime, Timespec is leap second aware.

Methods

impl Timespec[src]

pub fn now() -> Timespec[src]

Return the Timespec representing now.

pub fn unix(stamp: i64, nano: i32) -> Result<Timespec, InputError>[src]

Create a new Timespec from a Unix timestamp. An InputError is returned if nano ∉ [0, 999999999].

pub fn seconds(&self) -> i64[src]

Get the number of Unix seconds since the Unix Epoch.

pub fn nanoseconds(&self) -> i32[src]

Get the number of nanoseconds elapsed for the current second.

pub fn to_datetime<'a>(&self, tz: &'a Timezone) -> Datetime<'a>[src]

Convert the Timespec into a Datetime, given a Timezone. Note the Timespec is always expressed as a Unix time, so converting to a Datetime won't interpret the Timespec as anything other than an offset from Unix Epoch in UTC timezone.

Trait Implementations

impl Clone for Timespec[src]

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

Performs copy-assignment from source. Read more

impl Ord for Timespec[src]

fn max(self, other: Self) -> Self1.21.0[src]

Compares and returns the maximum of two values. Read more

fn min(self, other: Self) -> Self1.21.0[src]

Compares and returns the minimum of two values. Read more

fn clamp(self, min: Self, max: Self) -> Self[src]

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

Restrict a value to a certain interval. Read more

impl Eq for Timespec[src]

impl Copy for Timespec[src]

impl PartialOrd<Timespec> for Timespec[src]

#[must_use]
fn lt(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests less than (for self and other) and is used by the < operator. Read more

#[must_use]
fn le(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

#[must_use]
fn gt(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests greater than (for self and other) and is used by the > operator. Read more

#[must_use]
fn ge(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl PartialEq<Timespec> for Timespec[src]

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests for !=.

impl Debug for Timespec[src]

impl Add<Deltatime> for Timespec[src]

type Output = Timespec

The resulting type after applying the + operator.

impl Sub<Deltatime> for Timespec[src]

type Output = Timespec

The resulting type after applying the - operator.

impl Sub<Timespec> for Timespec[src]

type Output = Deltatime

The resulting type after applying the - operator.

Auto Trait Implementations

impl Send for Timespec

impl Sync for Timespec

Blanket Implementations

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

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

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

type Owned = T

The resulting type after obtaining ownership.

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.

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.

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

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

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