#[repr(C, packed)]
pub struct TAI64 { pub tai64n: i64, }
Expand description

reg.udral.physics.time.TAI64.0.1

Fixed size 8 bytes

Standard TAI64N time label (https://cr.yp.to/libtai/tai64.html). Quote from the source:

TAI stands for Temps Atomique International, the current international real-time standard. One TAI second is defined as the duration of 9192631770 periods of the radiation corresponding to the transition between the two hyperfine levels of the ground state of the cesium atom. TAI also specifies a frame of reference. Further discussion of special relativity is outside the scope of this document.

A TAI64 label is an integer between 0 and 2^64 referring to a particular second of real time. Integer s refers to:

   - the TAI second beginning exactly 2^62 - s seconds before the beginning of 1970 TAI,
     if s is between 0 inclusive and 2^62 exclusive; or

   - the TAI second beginning exactly s - 2^62 seconds after the beginning of 1970 TAI,
     if s is between 2^62 inclusive and 2^63 exclusive.

Fields§

§tai64n: i64

[nanosecond] Nanoseconds elapsed since 1970-01-01T00:00:00Z TAI.

saturated int64

Always aligned, size 64 bits

Trait Implementations§

source§

impl AsBytes for TAI64where i64: AsBytes,

source§

fn as_bytes(&self) -> &[u8]

Gets the bytes of this value. Read more
source§

fn as_bytes_mut(&mut self) -> &mut [u8]where Self: FromBytes,

Gets the bytes of this value mutably. Read more
source§

fn write_to<B>(&self, bytes: B) -> Option<()>where B: ByteSliceMut,

Writes a copy of self to bytes. Read more
source§

fn write_to_prefix<B>(&self, bytes: B) -> Option<()>where B: ByteSliceMut,

Writes a copy of self to the prefix of bytes. Read more
source§

fn write_to_suffix<B>(&self, bytes: B) -> Option<()>where B: ByteSliceMut,

Writes a copy of self to the suffix of bytes. Read more
source§

impl DataType for TAI64

source§

const EXTENT_BYTES: Option<u32> = None

This type is sealed.

source§

impl Deserialize for TAI64

source§

fn deserialize(cursor: &mut ReadCursor<'_>) -> Result<Self, DeserializeError>where Self: Sized,

Deserializes a value and returns it
source§

fn deserialize_zero_copy(cursor: &mut ReadCursor<'_>) -> Selfwhere Self: Sized + AsBytes + FromBytes,

Deserializes a value from a slice of bytes and returns it Read more
source§

fn deserialize_from_bytes(bytes: &[u8]) -> Result<Self, DeserializeError>where Self: Sized,

A convenience function that creates a cursor around the provided bytes and calls deserialize
source§

impl FromBytes for TAI64where i64: FromBytes,

source§

fn read_from<B>(bytes: B) -> Option<Self>where B: ByteSlice, Self: Sized,

Reads a copy of Self from bytes. Read more
source§

fn read_from_prefix<B>(bytes: B) -> Option<Self>where B: ByteSlice, Self: Sized,

Reads a copy of Self from the prefix of bytes. Read more
source§

fn read_from_suffix<B>(bytes: B) -> Option<Self>where B: ByteSlice, Self: Sized,

Reads a copy of Self from the suffix of bytes. Read more
source§

fn new_zeroed() -> Selfwhere Self: Sized,

Creates an instance of Self from zeroed bytes.
source§

impl Serialize for TAI64

source§

fn size_bits(&self) -> usize

Returns the size of the encoded form of this value, in bits Read more
source§

fn serialize(&self, cursor: &mut WriteCursor<'_>)

Serializes this value into a buffer Read more
source§

fn serialize_to_bytes(&self, bytes: &mut [u8])

A convenience function that creates a cursor around the provided bytes and calls serialize
source§

impl Message for TAI64

Auto Trait Implementations§

§

impl RefUnwindSafe for TAI64

§

impl Send for TAI64

§

impl Sync for TAI64

§

impl Unpin for TAI64

§

impl UnwindSafe for TAI64

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere 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, U> TryFrom<U> for Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.