eva_common::time

Struct Time

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

Time

Serialized as f64 Deserialized from unsigned integers (seconds), floats, [sec, nsec] seqs

With “db” feature provides sqlx interfaces for Sqlite (stored as nanoseconds integer) and Postgres (stored as TIMESTAMP/TIMESTAMPTZ)

Implementations§

Source§

impl Time

Source§

impl Time

Source

pub fn new(sec: u64, nsec: u64) -> Self

Source

pub fn now() -> Self

§Panics

Will panic if the system real-time clock is not available Will panic on Windows if the clock is set before 1.1.1970

Source

pub fn now_monotonic() -> Self

On Windows returns time since the first access

§Panics

Will panic if the system monotonic clock is not available

Source

pub fn from_timestamp_ns(timestamp_ns: u64) -> Self

Source

pub fn from_timestamp_us(timestamp_us: u64) -> Self

Source

pub fn from_timestamp_ms(timestamp_ms: u64) -> Self

Source

pub fn from_timestamp(timestamp: f64) -> Self

Source

pub fn timestamp(&self) -> f64

Source

pub fn timestamp_sec(&self) -> u64

Source

pub fn timestamp_ns(&self) -> u64

Source

pub fn timestamp_us(&self) -> u64

Source

pub fn timestamp_ms(&self) -> u64

Trait Implementations§

Source§

impl Add<Duration> for Time

§Panics

Will panic if duration in nanoseconds > u64::MAX

Source§

type Output = Time

The resulting type after applying the + operator.
Source§

fn add(self, dur: Duration) -> Time

Performs the + operation. Read more
Source§

impl Add<f64> for Time

Source§

type Output = Time

The resulting type after applying the + operator.
Source§

fn add(self, value: f64) -> Time

Performs the + operation. Read more
Source§

impl Add<u32> for Time

Source§

type Output = Time

The resulting type after applying the + operator.
Source§

fn add(self, value: u32) -> Time

Performs the + operation. Read more
Source§

impl Add<u64> for Time

Source§

type Output = Time

The resulting type after applying the + operator.
Source§

fn add(self, value: u64) -> Time

Performs the + operation. Read more
Source§

impl Clone for Time

Source§

fn clone(&self) -> Time

Returns a copy of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for Time

Source§

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

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

impl<'r> Decode<'r, Postgres> for Time

Source§

fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>

Decode a new value of this type using a raw value from the database.
Source§

impl<'r> Decode<'r, Sqlite> for Time

Source§

fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>

Decode a new value of this type using a raw value from the database.
Source§

impl Default for Time

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for Time

Source§

fn deserialize<D>(deserializer: D) -> Result<Time, D::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Display for Time

Source§

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

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

impl Encode<'_, Postgres> for Time

Source§

fn encode_by_ref(&self, buf: &mut PgArgumentBuffer) -> IsNull

Writes the value of self into buf without moving self. Read more
Source§

fn size_hint(&self) -> usize

Source§

fn encode(self, buf: &mut <DB as HasArguments<'q>>::ArgumentBuffer) -> IsNull
where Self: Sized,

Writes the value of self into buf in the expected format for the database.
Source§

fn produces(&self) -> Option<<DB as Database>::TypeInfo>

Source§

impl<'q> Encode<'q, Sqlite> for Time

Source§

fn encode_by_ref(&self, args: &mut Vec<SqliteArgumentValue<'q>>) -> IsNull

Writes the value of self into buf without moving self. Read more
Source§

fn encode(self, buf: &mut <DB as HasArguments<'q>>::ArgumentBuffer) -> IsNull
where Self: Sized,

Writes the value of self into buf in the expected format for the database.
Source§

fn produces(&self) -> Option<<DB as Database>::TypeInfo>

Source§

fn size_hint(&self) -> usize

Source§

impl From<DateTime<Local>> for Time

Source§

fn from(datetime: DateTime<Local>) -> Self

Converts to this type from the input type.
Source§

impl From<DateTime<Utc>> for Time

Source§

fn from(datetime: DateTime<Utc>) -> Self

Converts to this type from the input type.
Source§

impl From<Duration> for Time

Source§

fn from(v: Duration) -> Self

Converts to this type from the input type.
Source§

impl From<NaiveDateTime> for Time

Source§

fn from(datetime: NaiveDateTime) -> Self

Converts to this type from the input type.
Source§

impl From<Time> for Value

Source§

fn from(t: Time) -> Value

Converts to this type from the input type.
Source§

impl From<Time> for f64

Source§

fn from(t: Time) -> f64

Converts to this type from the input type.
Source§

impl From<f32> for Time

Source§

fn from(v: f32) -> Time

Converts to this type from the input type.
Source§

impl From<f64> for Time

Source§

fn from(v: f64) -> Time

Converts to this type from the input type.
Source§

impl FromStr for Time

Source§

type Err = Error

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

fn from_str(s: &str) -> EResult<Self>

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

impl PartialEq for Time

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for Time

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Sub<Duration> for Time

§Panics

Will panic if duration in nanoseconds > u64::MAX

Source§

type Output = Time

The resulting type after applying the - operator.
Source§

fn sub(self, dur: Duration) -> Time

Performs the - operation. Read more
Source§

impl Sub<f64> for Time

Source§

type Output = Time

The resulting type after applying the - operator.
Source§

fn sub(self, value: f64) -> Time

Performs the - operation. Read more
Source§

impl Sub<u32> for Time

Source§

type Output = Time

The resulting type after applying the - operator.
Source§

fn sub(self, value: u32) -> Time

Performs the - operation. Read more
Source§

impl Sub<u64> for Time

Source§

type Output = Time

The resulting type after applying the - operator.
Source§

fn sub(self, value: u64) -> Time

Performs the - operation. Read more
Source§

impl TryFrom<SystemTime> for Time

Source§

type Error = Error

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

fn try_from(t: SystemTime) -> EResult<Self>

Performs the conversion.
Source§

impl TryFrom<Time> for DateTime<Local>

Source§

type Error = Error

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

fn try_from(t: Time) -> EResult<Self>

Performs the conversion.
Source§

impl TryFrom<Time> for DateTime<Utc>

Source§

type Error = Error

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

fn try_from(t: Time) -> EResult<Self>

Performs the conversion.
Source§

impl TryFrom<Time> for NaiveDateTime

Source§

type Error = Error

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

fn try_from(t: Time) -> EResult<Self>

Performs the conversion.
Source§

impl Type<Postgres> for Time

Source§

fn type_info() -> PgTypeInfo

Returns the canonical SQL type for this Rust type. Read more
Source§

fn compatible(ty: &PgTypeInfo) -> bool

Determines if this Rust type is compatible with the given SQL type. Read more
Source§

impl Type<Sqlite> for Time

Source§

fn type_info() -> SqliteTypeInfo

Returns the canonical SQL type for this Rust type. Read more
Source§

fn compatible(ty: &SqliteTypeInfo) -> bool

Determines if this Rust type is compatible with the given SQL type. Read more
Source§

impl Copy for Time

Source§

impl Eq for Time

Source§

impl StructuralPartialEq for Time

Auto Trait Implementations§

§

impl Freeze for Time

§

impl RefUnwindSafe for Time

§

impl Send for Time

§

impl Sync for Time

§

impl Unpin for Time

§

impl UnwindSafe for Time

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

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

Source§

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

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

impl<T> CustomError for T
where T: Display + Debug + Send + Sync + 'static,

Source§

fn as_any(&self) -> &(dyn Any + Send + Sync + 'static)

Source§

fn as_any_mut(&mut self) -> &mut (dyn Any + Send + Sync + 'static)

Source§

fn as_box_any(self: Box<T>) -> Box<dyn Any + Send + Sync>

Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

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

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

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

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

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

Source§

type Error = Infallible

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

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

Performs the conversion.
Source§

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

Source§

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

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

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

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T