completed 04 traits
This commit is contained in:
@@ -1,10 +1,28 @@
|
||||
// TODO: implement the necessary traits to make the test compile and pass.
|
||||
// You *can't* modify the test.
|
||||
|
||||
use std::ops::Add;
|
||||
|
||||
#[derive(Clone, Copy, Debug)]
|
||||
pub struct WrappingU32 {
|
||||
value: u32,
|
||||
}
|
||||
|
||||
impl PartialEq for WrappingU32 {
|
||||
fn eq(&self, other: &Self) -> bool {
|
||||
self.value == other.value
|
||||
}
|
||||
}
|
||||
|
||||
impl Add for WrappingU32 {
|
||||
type Output = WrappingU32;
|
||||
fn add(self, rhs: Self) -> Self::Output {
|
||||
WrappingU32 {
|
||||
value: self.value.wrapping_add(rhs.value),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl WrappingU32 {
|
||||
pub fn new(value: u32) -> Self {
|
||||
Self { value }
|
||||
|
||||
Reference in New Issue
Block a user