Struct dusk_jubjub::JubJubExtended
source · [−]pub struct JubJubExtended { /* private fields */ }
Expand description
This represents an extended point (X, Y, Z, T1, T2)
with Z
nonzero, corresponding to the affine point
(X/Z, Y/Z)
. We always have T1 * T2 = XY/Z
.
You can do the following things with a point in this form:
- Convert it into a point in the affine form.
- Add it to an
JubJubExtended
,AffineNielsPoint
orExtendedNielsPoint
. - Double it using
double()
. - Compare it with another extended point using
PartialEq
orct_eq()
.
Implementations
sourceimpl JubJubExtended
impl JubJubExtended
sourcepub const fn from_affine(affine: JubJubAffine) -> Self
pub const fn from_affine(affine: JubJubAffine) -> Self
Constructs an extended point (with Z = 1
) from
an affine point using the map (x, y) => (x, y, 1, x, y)
.
sourcepub const fn from_raw_unchecked(
x: BlsScalar,
y: BlsScalar,
z: BlsScalar,
t1: BlsScalar,
t2: BlsScalar
) -> Self
pub const fn from_raw_unchecked(
x: BlsScalar,
y: BlsScalar,
z: BlsScalar,
t1: BlsScalar,
t2: BlsScalar
) -> Self
Constructs an extended point from its raw internals
sourcepub fn is_identity(&self) -> Choice
pub fn is_identity(&self) -> Choice
Determines if this point is the identity.
sourcepub fn is_small_order(&self) -> Choice
pub fn is_small_order(&self) -> Choice
Determines if this point is of small order.
sourcepub fn is_torsion_free(&self) -> Choice
pub fn is_torsion_free(&self) -> Choice
Determines if this point is torsion free and so is contained in the prime order subgroup.
sourcepub fn is_prime_order(&self) -> Choice
pub fn is_prime_order(&self) -> Choice
Determines if this point is prime order, or in other words that
the smallest scalar multiplied by this point that produces the
identity is r
. This is equivalent to checking that the point
is both torsion free and not the identity.
sourcepub fn mul_by_cofactor(&self) -> JubJubExtended
pub fn mul_by_cofactor(&self) -> JubJubExtended
Multiplies this element by the cofactor 8
.
sourcepub fn to_niels(&self) -> ExtendedNielsPoint
pub fn to_niels(&self) -> ExtendedNielsPoint
Performs a pre-processing step that produces an ExtendedNielsPoint
for use in multiple additions.
sourcepub fn to_hash_inputs(&self) -> [BlsScalar; 2]
pub fn to_hash_inputs(&self) -> [BlsScalar; 2]
Returns two scalars suitable for hashing that represent the Extended Point.
sourcepub fn double(&self) -> JubJubExtended
pub fn double(&self) -> JubJubExtended
Computes the doubling of a point more efficiently than a point can be added to itself.
Trait Implementations
sourceimpl<'a, 'b> Add<&'b AffineNielsPoint> for &'a JubJubExtended
impl<'a, 'b> Add<&'b AffineNielsPoint> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, other: &'b AffineNielsPoint) -> JubJubExtended
fn add(self, other: &'b AffineNielsPoint) -> JubJubExtended
+
operation. Read moresourceimpl<'b> Add<&'b AffineNielsPoint> for JubJubExtended
impl<'b> Add<&'b AffineNielsPoint> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: &'b AffineNielsPoint) -> JubJubExtended
fn add(self, rhs: &'b AffineNielsPoint) -> JubJubExtended
+
operation. Read moresourceimpl<'a, 'b> Add<&'b ExtendedNielsPoint> for &'a JubJubExtended
impl<'a, 'b> Add<&'b ExtendedNielsPoint> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, other: &'b ExtendedNielsPoint) -> JubJubExtended
fn add(self, other: &'b ExtendedNielsPoint) -> JubJubExtended
+
operation. Read moresourceimpl<'b> Add<&'b ExtendedNielsPoint> for JubJubExtended
impl<'b> Add<&'b ExtendedNielsPoint> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: &'b ExtendedNielsPoint) -> JubJubExtended
fn add(self, rhs: &'b ExtendedNielsPoint) -> JubJubExtended
+
operation. Read moresourceimpl<'a, 'b> Add<&'b JubJubAffine> for &'a JubJubExtended
impl<'a, 'b> Add<&'b JubJubAffine> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, other: &'b JubJubAffine) -> JubJubExtended
fn add(self, other: &'b JubJubAffine) -> JubJubExtended
+
operation. Read moresourceimpl<'b> Add<&'b JubJubAffine> for JubJubExtended
impl<'b> Add<&'b JubJubAffine> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: &'b JubJubAffine) -> JubJubExtended
fn add(self, rhs: &'b JubJubAffine) -> JubJubExtended
+
operation. Read moresourceimpl<'a, 'b> Add<&'b JubJubExtended> for &'a JubJubExtended
impl<'a, 'b> Add<&'b JubJubExtended> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, other: &'b JubJubExtended) -> JubJubExtended
fn add(self, other: &'b JubJubExtended) -> JubJubExtended
+
operation. Read moresourceimpl<'b> Add<&'b JubJubExtended> for JubJubExtended
impl<'b> Add<&'b JubJubExtended> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: &'b JubJubExtended) -> JubJubExtended
fn add(self, rhs: &'b JubJubExtended) -> JubJubExtended
+
operation. Read moresourceimpl<'a> Add<AffineNielsPoint> for &'a JubJubExtended
impl<'a> Add<AffineNielsPoint> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: AffineNielsPoint) -> JubJubExtended
fn add(self, rhs: AffineNielsPoint) -> JubJubExtended
+
operation. Read moresourceimpl Add<AffineNielsPoint> for JubJubExtended
impl Add<AffineNielsPoint> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: AffineNielsPoint) -> JubJubExtended
fn add(self, rhs: AffineNielsPoint) -> JubJubExtended
+
operation. Read moresourceimpl<'a> Add<ExtendedNielsPoint> for &'a JubJubExtended
impl<'a> Add<ExtendedNielsPoint> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: ExtendedNielsPoint) -> JubJubExtended
fn add(self, rhs: ExtendedNielsPoint) -> JubJubExtended
+
operation. Read moresourceimpl Add<ExtendedNielsPoint> for JubJubExtended
impl Add<ExtendedNielsPoint> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: ExtendedNielsPoint) -> JubJubExtended
fn add(self, rhs: ExtendedNielsPoint) -> JubJubExtended
+
operation. Read moresourceimpl<'a> Add<JubJubAffine> for &'a JubJubExtended
impl<'a> Add<JubJubAffine> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: JubJubAffine) -> JubJubExtended
fn add(self, rhs: JubJubAffine) -> JubJubExtended
+
operation. Read moresourceimpl Add<JubJubAffine> for JubJubExtended
impl Add<JubJubAffine> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: JubJubAffine) -> JubJubExtended
fn add(self, rhs: JubJubAffine) -> JubJubExtended
+
operation. Read moresourceimpl<'a> Add<JubJubExtended> for &'a JubJubExtended
impl<'a> Add<JubJubExtended> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: JubJubExtended) -> JubJubExtended
fn add(self, rhs: JubJubExtended) -> JubJubExtended
+
operation. Read moresourceimpl Add<JubJubExtended> for JubJubExtended
impl Add<JubJubExtended> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
+
operator.sourcefn add(self, rhs: JubJubExtended) -> JubJubExtended
fn add(self, rhs: JubJubExtended) -> JubJubExtended
+
operation. Read moresourceimpl<'b> AddAssign<&'b AffineNielsPoint> for JubJubExtended
impl<'b> AddAssign<&'b AffineNielsPoint> for JubJubExtended
sourcefn add_assign(&mut self, rhs: &'b AffineNielsPoint)
fn add_assign(&mut self, rhs: &'b AffineNielsPoint)
+=
operation. Read moresourceimpl<'b> AddAssign<&'b ExtendedNielsPoint> for JubJubExtended
impl<'b> AddAssign<&'b ExtendedNielsPoint> for JubJubExtended
sourcefn add_assign(&mut self, rhs: &'b ExtendedNielsPoint)
fn add_assign(&mut self, rhs: &'b ExtendedNielsPoint)
+=
operation. Read moresourceimpl<'b> AddAssign<&'b JubJubAffine> for JubJubExtended
impl<'b> AddAssign<&'b JubJubAffine> for JubJubExtended
sourcefn add_assign(&mut self, rhs: &'b JubJubAffine)
fn add_assign(&mut self, rhs: &'b JubJubAffine)
+=
operation. Read moresourceimpl<'b> AddAssign<&'b JubJubExtended> for JubJubExtended
impl<'b> AddAssign<&'b JubJubExtended> for JubJubExtended
sourcefn add_assign(&mut self, rhs: &'b JubJubExtended)
fn add_assign(&mut self, rhs: &'b JubJubExtended)
+=
operation. Read moresourceimpl AddAssign<AffineNielsPoint> for JubJubExtended
impl AddAssign<AffineNielsPoint> for JubJubExtended
sourcefn add_assign(&mut self, rhs: AffineNielsPoint)
fn add_assign(&mut self, rhs: AffineNielsPoint)
+=
operation. Read moresourceimpl AddAssign<ExtendedNielsPoint> for JubJubExtended
impl AddAssign<ExtendedNielsPoint> for JubJubExtended
sourcefn add_assign(&mut self, rhs: ExtendedNielsPoint)
fn add_assign(&mut self, rhs: ExtendedNielsPoint)
+=
operation. Read moresourceimpl AddAssign<JubJubAffine> for JubJubExtended
impl AddAssign<JubJubAffine> for JubJubExtended
sourcefn add_assign(&mut self, rhs: JubJubAffine)
fn add_assign(&mut self, rhs: JubJubAffine)
+=
operation. Read moresourceimpl AddAssign<JubJubExtended> for JubJubExtended
impl AddAssign<JubJubExtended> for JubJubExtended
sourcefn add_assign(&mut self, rhs: JubJubExtended)
fn add_assign(&mut self, rhs: JubJubExtended)
+=
operation. Read moresourceimpl Clone for JubJubExtended
impl Clone for JubJubExtended
sourcefn clone(&self) -> JubJubExtended
fn clone(&self) -> JubJubExtended
1.0.0 · sourceconst fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read moresourceimpl ConditionallySelectable for JubJubExtended
impl ConditionallySelectable for JubJubExtended
sourcefn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self
fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self
sourcefn conditional_assign(&mut self, other: &Self, choice: Choice)
fn conditional_assign(&mut self, other: &Self, choice: Choice)
sourceimpl ConstantTimeEq for JubJubExtended
impl ConstantTimeEq for JubJubExtended
sourceimpl Debug for JubJubExtended
impl Debug for JubJubExtended
sourceimpl Default for JubJubExtended
impl Default for JubJubExtended
sourcefn default() -> JubJubExtended
fn default() -> JubJubExtended
Returns the identity.
sourceimpl<'a> From<&'a JubJubExtended> for JubJubAffine
impl<'a> From<&'a JubJubExtended> for JubJubAffine
sourcefn from(extended: &'a JubJubExtended) -> JubJubAffine
fn from(extended: &'a JubJubExtended) -> JubJubAffine
Constructs an affine point from an extended point
using the map (X, Y, Z, T1, T2) => (XZ, Y/Z)
as Z is always nonzero. This requires a field inversion
and so it is recommended to perform these in a batch
using batch_normalize
instead.
sourceimpl From<JubJubAffine> for JubJubExtended
impl From<JubJubAffine> for JubJubExtended
sourcefn from(affine: JubJubAffine) -> JubJubExtended
fn from(affine: JubJubAffine) -> JubJubExtended
sourceimpl From<JubJubExtended> for JubJubAffine
impl From<JubJubExtended> for JubJubAffine
sourcefn from(extended: JubJubExtended) -> JubJubAffine
fn from(extended: JubJubExtended) -> JubJubAffine
sourceimpl<'a, 'b> Mul<&'b Fr> for &'a JubJubExtended
impl<'a, 'b> Mul<&'b Fr> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
*
operator.sourcefn mul(self, other: &'b Fr) -> JubJubExtended
fn mul(self, other: &'b Fr) -> JubJubExtended
*
operation. Read moresourceimpl<'b> Mul<&'b Fr> for JubJubExtended
impl<'b> Mul<&'b Fr> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
*
operator.sourcefn mul(self, rhs: &'b Fr) -> JubJubExtended
fn mul(self, rhs: &'b Fr) -> JubJubExtended
*
operation. Read moresourceimpl<'a> Mul<Fr> for &'a JubJubExtended
impl<'a> Mul<Fr> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
*
operator.sourcefn mul(self, rhs: Fr) -> JubJubExtended
fn mul(self, rhs: Fr) -> JubJubExtended
*
operation. Read moresourceimpl Mul<Fr> for JubJubExtended
impl Mul<Fr> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
*
operator.sourcefn mul(self, rhs: Fr) -> JubJubExtended
fn mul(self, rhs: Fr) -> JubJubExtended
*
operation. Read moresourceimpl<'b> MulAssign<&'b Fr> for JubJubExtended
impl<'b> MulAssign<&'b Fr> for JubJubExtended
sourcefn mul_assign(&mut self, rhs: &'b Fr)
fn mul_assign(&mut self, rhs: &'b Fr)
*=
operation. Read moresourceimpl MulAssign<Fr> for JubJubExtended
impl MulAssign<Fr> for JubJubExtended
sourcefn mul_assign(&mut self, rhs: Fr)
fn mul_assign(&mut self, rhs: Fr)
*=
operation. Read moresourceimpl Neg for JubJubExtended
impl Neg for JubJubExtended
sourcefn neg(self) -> JubJubExtended
fn neg(self) -> JubJubExtended
Computes the negation of a point P = (X, Y, Z, T)
as -P = (-X, Y, Z, -T1, T2)
. The choice of T1
is made without loss of generality.
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourceimpl PartialEq<JubJubExtended> for JubJubExtended
impl PartialEq<JubJubExtended> for JubJubExtended
sourceimpl<'a, 'b> Sub<&'b AffineNielsPoint> for &'a JubJubExtended
impl<'a, 'b> Sub<&'b AffineNielsPoint> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, other: &'b AffineNielsPoint) -> JubJubExtended
fn sub(self, other: &'b AffineNielsPoint) -> JubJubExtended
-
operation. Read moresourceimpl<'b> Sub<&'b AffineNielsPoint> for JubJubExtended
impl<'b> Sub<&'b AffineNielsPoint> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: &'b AffineNielsPoint) -> JubJubExtended
fn sub(self, rhs: &'b AffineNielsPoint) -> JubJubExtended
-
operation. Read moresourceimpl<'a, 'b> Sub<&'b ExtendedNielsPoint> for &'a JubJubExtended
impl<'a, 'b> Sub<&'b ExtendedNielsPoint> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, other: &'b ExtendedNielsPoint) -> JubJubExtended
fn sub(self, other: &'b ExtendedNielsPoint) -> JubJubExtended
-
operation. Read moresourceimpl<'b> Sub<&'b ExtendedNielsPoint> for JubJubExtended
impl<'b> Sub<&'b ExtendedNielsPoint> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: &'b ExtendedNielsPoint) -> JubJubExtended
fn sub(self, rhs: &'b ExtendedNielsPoint) -> JubJubExtended
-
operation. Read moresourceimpl<'a, 'b> Sub<&'b JubJubAffine> for &'a JubJubExtended
impl<'a, 'b> Sub<&'b JubJubAffine> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, other: &'b JubJubAffine) -> JubJubExtended
fn sub(self, other: &'b JubJubAffine) -> JubJubExtended
-
operation. Read moresourceimpl<'b> Sub<&'b JubJubAffine> for JubJubExtended
impl<'b> Sub<&'b JubJubAffine> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: &'b JubJubAffine) -> JubJubExtended
fn sub(self, rhs: &'b JubJubAffine) -> JubJubExtended
-
operation. Read moresourceimpl<'a, 'b> Sub<&'b JubJubExtended> for &'a JubJubExtended
impl<'a, 'b> Sub<&'b JubJubExtended> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, other: &'b JubJubExtended) -> JubJubExtended
fn sub(self, other: &'b JubJubExtended) -> JubJubExtended
-
operation. Read moresourceimpl<'b> Sub<&'b JubJubExtended> for JubJubExtended
impl<'b> Sub<&'b JubJubExtended> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: &'b JubJubExtended) -> JubJubExtended
fn sub(self, rhs: &'b JubJubExtended) -> JubJubExtended
-
operation. Read moresourceimpl<'a> Sub<AffineNielsPoint> for &'a JubJubExtended
impl<'a> Sub<AffineNielsPoint> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: AffineNielsPoint) -> JubJubExtended
fn sub(self, rhs: AffineNielsPoint) -> JubJubExtended
-
operation. Read moresourceimpl Sub<AffineNielsPoint> for JubJubExtended
impl Sub<AffineNielsPoint> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: AffineNielsPoint) -> JubJubExtended
fn sub(self, rhs: AffineNielsPoint) -> JubJubExtended
-
operation. Read moresourceimpl<'a> Sub<ExtendedNielsPoint> for &'a JubJubExtended
impl<'a> Sub<ExtendedNielsPoint> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: ExtendedNielsPoint) -> JubJubExtended
fn sub(self, rhs: ExtendedNielsPoint) -> JubJubExtended
-
operation. Read moresourceimpl Sub<ExtendedNielsPoint> for JubJubExtended
impl Sub<ExtendedNielsPoint> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: ExtendedNielsPoint) -> JubJubExtended
fn sub(self, rhs: ExtendedNielsPoint) -> JubJubExtended
-
operation. Read moresourceimpl<'a> Sub<JubJubAffine> for &'a JubJubExtended
impl<'a> Sub<JubJubAffine> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: JubJubAffine) -> JubJubExtended
fn sub(self, rhs: JubJubAffine) -> JubJubExtended
-
operation. Read moresourceimpl Sub<JubJubAffine> for JubJubExtended
impl Sub<JubJubAffine> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: JubJubAffine) -> JubJubExtended
fn sub(self, rhs: JubJubAffine) -> JubJubExtended
-
operation. Read moresourceimpl<'a> Sub<JubJubExtended> for &'a JubJubExtended
impl<'a> Sub<JubJubExtended> for &'a JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: JubJubExtended) -> JubJubExtended
fn sub(self, rhs: JubJubExtended) -> JubJubExtended
-
operation. Read moresourceimpl Sub<JubJubExtended> for JubJubExtended
impl Sub<JubJubExtended> for JubJubExtended
type Output = JubJubExtended
type Output = JubJubExtended
-
operator.sourcefn sub(self, rhs: JubJubExtended) -> JubJubExtended
fn sub(self, rhs: JubJubExtended) -> JubJubExtended
-
operation. Read moresourceimpl<'b> SubAssign<&'b AffineNielsPoint> for JubJubExtended
impl<'b> SubAssign<&'b AffineNielsPoint> for JubJubExtended
sourcefn sub_assign(&mut self, rhs: &'b AffineNielsPoint)
fn sub_assign(&mut self, rhs: &'b AffineNielsPoint)
-=
operation. Read moresourceimpl<'b> SubAssign<&'b ExtendedNielsPoint> for JubJubExtended
impl<'b> SubAssign<&'b ExtendedNielsPoint> for JubJubExtended
sourcefn sub_assign(&mut self, rhs: &'b ExtendedNielsPoint)
fn sub_assign(&mut self, rhs: &'b ExtendedNielsPoint)
-=
operation. Read moresourceimpl<'b> SubAssign<&'b JubJubAffine> for JubJubExtended
impl<'b> SubAssign<&'b JubJubAffine> for JubJubExtended
sourcefn sub_assign(&mut self, rhs: &'b JubJubAffine)
fn sub_assign(&mut self, rhs: &'b JubJubAffine)
-=
operation. Read moresourceimpl<'b> SubAssign<&'b JubJubExtended> for JubJubExtended
impl<'b> SubAssign<&'b JubJubExtended> for JubJubExtended
sourcefn sub_assign(&mut self, rhs: &'b JubJubExtended)
fn sub_assign(&mut self, rhs: &'b JubJubExtended)
-=
operation. Read moresourceimpl SubAssign<AffineNielsPoint> for JubJubExtended
impl SubAssign<AffineNielsPoint> for JubJubExtended
sourcefn sub_assign(&mut self, rhs: AffineNielsPoint)
fn sub_assign(&mut self, rhs: AffineNielsPoint)
-=
operation. Read moresourceimpl SubAssign<ExtendedNielsPoint> for JubJubExtended
impl SubAssign<ExtendedNielsPoint> for JubJubExtended
sourcefn sub_assign(&mut self, rhs: ExtendedNielsPoint)
fn sub_assign(&mut self, rhs: ExtendedNielsPoint)
-=
operation. Read moresourceimpl SubAssign<JubJubAffine> for JubJubExtended
impl SubAssign<JubJubAffine> for JubJubExtended
sourcefn sub_assign(&mut self, rhs: JubJubAffine)
fn sub_assign(&mut self, rhs: JubJubAffine)
-=
operation. Read moresourceimpl SubAssign<JubJubExtended> for JubJubExtended
impl SubAssign<JubJubExtended> for JubJubExtended
sourcefn sub_assign(&mut self, rhs: JubJubExtended)
fn sub_assign(&mut self, rhs: JubJubExtended)
-=
operation. Read more