Implement {AddAssign, SubAssign} for DecafPoint.

This commit is contained in:
Isis Lovecruft 2017-05-18 23:02:39 +00:00
parent 27e4ea5181
commit e374451249
Failed to extract signature

View file

@ -36,6 +36,7 @@ use subtle::CTAssignable;
use subtle::CTNegatable;
use core::ops::{Add, Sub, Neg};
use core::ops::{AddAssign, SubAssign};
use core::ops::{Mul, MulAssign};
use curve;
@ -427,6 +428,12 @@ impl<'a, 'b> Add<&'b DecafPoint> for &'a DecafPoint {
}
}
impl<'b> AddAssign<&'b DecafPoint> for DecafPoint {
fn add_assign(&mut self, _rhs: &DecafPoint) {
*self = (self as &DecafPoint) + _rhs;
}
}
impl<'a, 'b> Sub<&'b DecafPoint> for &'a DecafPoint {
type Output = DecafPoint;
@ -435,6 +442,12 @@ impl<'a, 'b> Sub<&'b DecafPoint> for &'a DecafPoint {
}
}
impl<'b> SubAssign<&'b DecafPoint> for DecafPoint {
fn sub_assign(&mut self, _rhs: &DecafPoint) {
*self = (self as &DecafPoint) - _rhs;
}
}
impl<'a> Neg for &'a DecafPoint {
type Output = DecafPoint;