Remove Scalar::{add, sub, mul} methods

This commit is contained in:
Henry de Valence 2017-11-21 10:43:49 -08:00
parent e94c6f0a96
commit 033a90890c

View file

@ -115,47 +115,47 @@ impl IndexMut<usize> for Scalar {
impl<'b> MulAssign<&'b Scalar> for Scalar {
fn mul_assign(&mut self, _rhs: &'b Scalar) {
*self = Scalar::mul(self, _rhs)
*self = UnpackedScalar::mul(&self.unpack(), &_rhs.unpack()).pack();
}
}
impl<'a, 'b> Mul<&'b Scalar> for &'a Scalar {
type Output = Scalar;
fn mul(self, _rhs: &'b Scalar) -> Scalar {
Scalar::mul(self, _rhs)
UnpackedScalar::mul(&self.unpack(), &_rhs.unpack()).pack()
}
}
impl<'b> AddAssign<&'b Scalar> for Scalar {
fn add_assign(&mut self, _rhs: &'b Scalar) {
*self = Scalar::add(self, _rhs);
*self = UnpackedScalar::add(&self.unpack(), &_rhs.unpack()).pack();
}
}
impl<'a, 'b> Add<&'b Scalar> for &'a Scalar {
type Output = Scalar;
fn add(self, _rhs: &'b Scalar) -> Scalar {
Scalar::add(self, _rhs)
UnpackedScalar::add(&self.unpack(), &_rhs.unpack()).pack()
}
}
impl<'b> SubAssign<&'b Scalar> for Scalar {
fn sub_assign(&mut self, _rhs: &'b Scalar) {
*self = Scalar::sub(self, _rhs);
*self = UnpackedScalar::sub(&self.unpack(), &_rhs.unpack()).pack();
}
}
impl<'a, 'b> Sub<&'b Scalar> for &'a Scalar {
type Output = Scalar;
fn sub(self, _rhs: &'b Scalar) -> Scalar {
Scalar::sub(self, _rhs)
UnpackedScalar::sub(&self.unpack(), &_rhs.unpack()).pack()
}
}
impl<'a> Neg for &'a Scalar {
type Output = Scalar;
fn neg(self) -> Scalar {
Scalar::sub(&Scalar::zero(), self)
&Scalar::zero() - self
}
}
@ -433,21 +433,6 @@ impl Scalar {
UnpackedScalar::from_bytes(&self.0)
}
/// Compute `a + b` (mod l)
pub fn add(a: &Scalar, b: &Scalar) -> Scalar {
UnpackedScalar::add(&a.unpack(), &b.unpack()).pack()
}
/// Compute `a - b` (mod l).
pub fn sub(a: &Scalar, b: &Scalar) -> Scalar {
UnpackedScalar::sub(&a.unpack(), &b.unpack()).pack()
}
/// Compute `a * b` (mod l).
pub fn mul(a: &Scalar, b: &Scalar) -> Scalar {
UnpackedScalar::mul(&a.unpack(), &b.unpack()).pack()
}
/// Compute `(a * b) + c` (mod l).
pub fn multiply_add(a: &Scalar, b: &Scalar, c: &Scalar) -> Scalar {
UnpackedScalar::add(&UnpackedScalar::mul(&a.unpack(), &b.unpack()), &c.unpack()).pack()