diff options
| author | Jorge Aparicio <japaricious@gmail.com> | 2014-12-31 15:45:13 -0500 |
|---|---|---|
| committer | Jorge Aparicio <japaricious@gmail.com> | 2015-01-03 16:29:19 -0500 |
| commit | 99017f82b6e41ed283199b88ddfc0990bb95d696 (patch) | |
| tree | 66cd460eb70ab440425b66bb81651820c1d58469 /src/libstd/time | |
| parent | 7095dd00702373dd612d61e191eb57fadce00751 (diff) | |
| download | rust-99017f82b6e41ed283199b88ddfc0990bb95d696.tar.gz rust-99017f82b6e41ed283199b88ddfc0990bb95d696.zip | |
use assoc types in binop traits
Diffstat (limited to 'src/libstd/time')
| -rw-r--r-- | src/libstd/time/duration.rs | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/libstd/time/duration.rs b/src/libstd/time/duration.rs index 51564b53976..1e148105cc6 100644 --- a/src/libstd/time/duration.rs +++ b/src/libstd/time/duration.rs @@ -273,7 +273,9 @@ impl Neg<Duration> for Duration { } } -impl Add<Duration, Duration> for Duration { +impl Add for Duration { + type Output = Duration; + fn add(self, rhs: Duration) -> Duration { let mut secs = self.secs + rhs.secs; let mut nanos = self.nanos + rhs.nanos; @@ -285,7 +287,9 @@ impl Add<Duration, Duration> for Duration { } } -impl Sub<Duration, Duration> for Duration { +impl Sub for Duration { + type Output = Duration; + fn sub(self, rhs: Duration) -> Duration { let mut secs = self.secs - rhs.secs; let mut nanos = self.nanos - rhs.nanos; @@ -297,7 +301,9 @@ impl Sub<Duration, Duration> for Duration { } } -impl Mul<i32, Duration> for Duration { +impl Mul<i32> for Duration { + type Output = Duration; + fn mul(self, rhs: i32) -> Duration { // Multiply nanoseconds as i64, because it cannot overflow that way. let total_nanos = self.nanos as i64 * rhs as i64; @@ -307,7 +313,9 @@ impl Mul<i32, Duration> for Duration { } } -impl Div<i32, Duration> for Duration { +impl Div<i32> for Duration { + type Output = Duration; + fn div(self, rhs: i32) -> Duration { let mut secs = self.secs / rhs as i64; let carry = self.secs - secs * rhs as i64; |
