aboutsummaryrefslogtreecommitdiff
path: root/embassy-time/src/instant.rs
diff options
context:
space:
mode:
authorwackazong <[email protected]>2025-02-04 11:03:17 +0100
committerGitHub <[email protected]>2025-02-04 11:03:17 +0100
commitb7fbf6d519fd2c07ec4b203351b15500cdc9e6dc (patch)
tree62ec5125be7ce6fed7a64702c68d84fb18c5374b /embassy-time/src/instant.rs
parent2c8a550410653d58b103d71b7571668872dd79fa (diff)
Add saturating_add and saturating_sub to Instant
Diffstat (limited to 'embassy-time/src/instant.rs')
-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 {