use std::num::NonZeroU64;
use std::time::Duration;
#[derive(Debug, Copy, Clone)]
pub(crate) struct Rate {
num: u64,
per: Duration,
}
impl Rate {
pub(crate) fn new(num: NonZeroU64, per: Duration) -> Self {
assert!(per > Duration::default());
Rate {
num: num.into(),
per,
}
}
pub(crate) fn num(&self) -> u64 {
self.num
}
pub(crate) fn per(&self) -> Duration {
self.per
}
}