pub struct DurationParts {
pub seconds: u64,
pub nanos: u32,
}Expand description
Split seconds into whole seconds and nanoseconds.
This type is used for GNSS week/day constructors so that the core API
stays fully deterministic and no_std-friendly.
Fields§
§seconds: u64Whole seconds part (non-negative).
nanos: u32Nanosecond part, must be in [0, 999_999_999].
Implementations§
Source§impl DurationParts
impl DurationParts
Sourcepub const NANOS_PER_SECOND: u32 = 1_000_000_000
pub const NANOS_PER_SECOND: u32 = 1_000_000_000
Number of nanoseconds in one second.
Sourcepub const fn new(seconds: u64, nanos: u32) -> Result<Self, GnssTimeError>
pub const fn new(seconds: u64, nanos: u32) -> Result<Self, GnssTimeError>
Creates a new DurationParts from whole seconds and nanoseconds.
§Parameters
seconds– whole seconds (non‑negative)nanos– additional nanoseconds, must be less than1_000_000_000
§Errors
Returns GnssTimeError::InvalidInput if nanos >= 1_000_000_000.
§Example
use gnss_time::DurationParts;
let parts = DurationParts::new(5, 500_000_000).unwrap();
assert_eq!(parts.as_nanos(), 5_500_000_000);Trait Implementations§
Source§impl Clone for DurationParts
impl Clone for DurationParts
Source§fn clone(&self) -> DurationParts
fn clone(&self) -> DurationParts
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DurationParts
impl Debug for DurationParts
Source§impl Default for DurationParts
impl Default for DurationParts
Source§fn default() -> DurationParts
fn default() -> DurationParts
Returns the “default value” for a type. Read more
Source§impl Hash for DurationParts
impl Hash for DurationParts
Source§impl PartialEq for DurationParts
impl PartialEq for DurationParts
impl Copy for DurationParts
impl Eq for DurationParts
impl StructuralPartialEq for DurationParts
Auto Trait Implementations§
impl Freeze for DurationParts
impl RefUnwindSafe for DurationParts
impl Send for DurationParts
impl Sync for DurationParts
impl Unpin for DurationParts
impl UnsafeUnpin for DurationParts
impl UnwindSafe for DurationParts
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