aboutsummaryrefslogtreecommitdiff
path: root/embassy-time
diff options
context:
space:
mode:
Diffstat (limited to 'embassy-time')
-rw-r--r--embassy-time/src/instant.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/embassy-time/src/instant.rs b/embassy-time/src/instant.rs
index cae80e51f..e1417174c 100644
--- a/embassy-time/src/instant.rs
+++ b/embassy-time/src/instant.rs
@@ -115,6 +115,16 @@ impl Instant {
115 pub fn checked_sub(&self, duration: Duration) -> Option<Instant> { 115 pub fn checked_sub(&self, duration: Duration) -> Option<Instant> {
116 self.ticks.checked_sub(duration.ticks).map(|ticks| Instant { ticks }) 116 self.ticks.checked_sub(duration.ticks).map(|ticks| Instant { ticks })
117 } 117 }
118
119 /// Adds a Duration to self. In case of overflow, the maximum value is returned.
120 pub fn saturating_add(&mut self, duration: Duration) {
121 self.ticks = self.ticks.saturating_add(duration.ticks);
122 }
123
124 /// Subtracts a Duration from self. In case of overflow, the minimum value is returned.
125 pub fn saturating_sub(&mut self, duration: Duration) {
126 self.ticks = self.ticks.saturating_sub(duration.ticks);
127 }
118} 128}
119 129
120impl Add<Duration> for Instant { 130impl Add<Duration> for Instant {