#[repr(C)]pub struct TimesyncMessageV4 {
    pub parent_time: U64,
    pub vm_reference_time: u64,
    pub flags: TimesyncFlags,
    pub leap_indicator: u8,
    pub stratum: u8,
    pub reserved: [u8; 5],
}Expand description
Timesync messages used in version 4.0 and later.
Fields§
§parent_time: U64The wall clock time measured in the parent, in UTC (without leap seconds), measured in 100ns units since 1 Jan 1601.
vm_reference_time: u64The VM reference time of the child, at the time the parent measured the wall clock time.
flags: TimesyncFlagsFlags indicating the message’s purpose.
leap_indicator: u8The NTP leap indicator.
stratum: u8The NTP stratum.
reserved: [u8; 5]Reserved.
Trait Implementations§
Source§impl FromBytes for TimesyncMessageV4
 
impl FromBytes for TimesyncMessageV4
§fn ref_from_bytes(
    source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout + Immutable,
 
fn ref_from_bytes(
    source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout + Immutable,
§fn ref_from_prefix(
    source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout + Immutable,
 
fn ref_from_prefix(
    source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout + Immutable,
§fn ref_from_suffix(
    source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: Immutable + KnownLayout,
 
fn ref_from_suffix(
    source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: Immutable + KnownLayout,
Interprets the suffix of the given bytes as a 
&Self. Read more§fn mut_from_bytes(
    source: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
 
fn mut_from_bytes(
    source: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
§fn mut_from_prefix(
    source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
 
fn mut_from_prefix(
    source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
§fn mut_from_suffix(
    source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
 
fn mut_from_suffix(
    source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout,
§fn ref_from_bytes_with_elems(
    source: &[u8],
    count: usize,
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn ref_from_bytes_with_elems(
    source: &[u8],
    count: usize,
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
§fn ref_from_prefix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn ref_from_prefix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
§fn ref_from_suffix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn ref_from_suffix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
§fn mut_from_bytes_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize> + Immutable,
 
fn mut_from_bytes_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize> + Immutable,
§fn mut_from_prefix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize>,
 
fn mut_from_prefix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize>,
§fn mut_from_suffix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize>,
 
fn mut_from_suffix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
    Self: IntoBytes + KnownLayout<PointerMetadata = usize>,
Source§impl FromZeros for TimesyncMessageV4
 
impl FromZeros for TimesyncMessageV4
§fn new_zeroed() -> Selfwhere
    Self: Sized,
 
fn new_zeroed() -> Selfwhere
    Self: Sized,
Creates an instance of 
Self from zeroed bytes. Read more§fn new_box_zeroed() -> Result<Box<Self>, AllocError>where
    Self: Sized,
 
fn new_box_zeroed() -> Result<Box<Self>, AllocError>where
    Self: Sized,
Creates a 
Box<Self> from zeroed bytes. Read more§fn new_box_zeroed_with_elems(count: usize) -> Result<Box<Self>, AllocError>where
    Self: KnownLayout<PointerMetadata = usize>,
 
fn new_box_zeroed_with_elems(count: usize) -> Result<Box<Self>, AllocError>where
    Self: KnownLayout<PointerMetadata = usize>,
Creates a 
Box<[Self]> (a boxed slice) from zeroed bytes. Read more§fn new_vec_zeroed(len: usize) -> Result<Vec<Self>, AllocError>where
    Self: Sized,
 
fn new_vec_zeroed(len: usize) -> Result<Vec<Self>, AllocError>where
    Self: Sized,
Creates a 
Vec<Self> from zeroed bytes. Read moreSource§impl IntoBytes for TimesyncMessageV4
 
impl IntoBytes for TimesyncMessageV4
§fn as_mut_bytes(&mut self) -> &mut [u8] ⓘwhere
    Self: FromBytes,
 
fn as_mut_bytes(&mut self) -> &mut [u8] ⓘwhere
    Self: FromBytes,
Gets the bytes of this value mutably. Read more
§fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
    Self: Immutable,
 
fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
    Self: Immutable,
Source§impl KnownLayout for TimesyncMessageV4
 
impl KnownLayout for TimesyncMessageV4
Source§impl TryFromBytes for TimesyncMessageV4where
    U64: TryFromBytes,
    u64: TryFromBytes,
    TimesyncFlags: TryFromBytes,
    u8: TryFromBytes,
    [u8; 5]: TryFromBytes,
 
impl TryFromBytes for TimesyncMessageV4where
    U64: TryFromBytes,
    u64: TryFromBytes,
    TimesyncFlags: TryFromBytes,
    u8: TryFromBytes,
    [u8; 5]: TryFromBytes,
§fn try_ref_from_bytes(
    source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
 
fn try_ref_from_bytes(
    source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
§fn try_ref_from_prefix(
    source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
 
fn try_ref_from_prefix(
    source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
§fn try_ref_from_suffix(
    source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
 
fn try_ref_from_suffix(
    source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout + Immutable,
§fn try_mut_from_bytes(
    bytes: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
 
fn try_mut_from_bytes(
    bytes: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
§fn try_mut_from_prefix(
    source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
 
fn try_mut_from_prefix(
    source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
§fn try_mut_from_suffix(
    source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
 
fn try_mut_from_suffix(
    source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout + IntoBytes,
§fn try_ref_from_bytes_with_elems(
    source: &[u8],
    count: usize,
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn try_ref_from_bytes_with_elems(
    source: &[u8],
    count: usize,
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
§fn try_ref_from_prefix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn try_ref_from_prefix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
Attempts to interpret the prefix of the given 
source as a &Self with
a DST length equal to count. Read more§fn try_ref_from_suffix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
 
fn try_ref_from_suffix_with_elems(
    source: &[u8],
    count: usize,
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + Immutable,
Attempts to interpret the suffix of the given 
source as a &Self with
a DST length equal to count. Read more§fn try_mut_from_bytes_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
 
fn try_mut_from_bytes_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
§fn try_mut_from_prefix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
 
fn try_mut_from_prefix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
Attempts to interpret the prefix of the given 
source as a &mut Self
with a DST length equal to count. Read more§fn try_mut_from_suffix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
 
fn try_mut_from_suffix_with_elems(
    source: &mut [u8],
    count: usize,
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
    Self: KnownLayout<PointerMetadata = usize> + IntoBytes,
Attempts to interpret the suffix of the given 
source as a &mut Self
with a DST length equal to count. Read more§fn try_read_from_bytes(
    source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
 
fn try_read_from_bytes(
    source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
§fn try_read_from_prefix(
    source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
 
fn try_read_from_prefix(
    source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
§fn try_read_from_suffix(
    source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
 
fn try_read_from_suffix(
    source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
    Self: Sized,
impl Immutable for TimesyncMessageV4
Auto Trait Implementations§
impl Freeze for TimesyncMessageV4
impl RefUnwindSafe for TimesyncMessageV4
impl Send for TimesyncMessageV4
impl Sync for TimesyncMessageV4
impl Unpin for TimesyncMessageV4
impl UnwindSafe for TimesyncMessageV4
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more