pub struct G2Projective { /* private fields */ }
Expand description
G₂ projective point representation.
Implementations§
Source§impl G2Projective
impl G2Projective
Sourcepub fn identity() -> G2Projective
pub fn identity() -> G2Projective
Point at infinity.
Sourcepub fn generator() -> G2Projective
pub fn generator() -> G2Projective
Fixed generator.
Sourcepub fn double(&self) -> G2Projective
pub fn double(&self) -> G2Projective
Point doubling.
Sourcepub fn add(&self, rhs: &G2Projective) -> G2Projective
pub fn add(&self, rhs: &G2Projective) -> G2Projective
Point addition.
Sourcepub fn add_mixed(&self, rhs: &G2Affine) -> G2Projective
pub fn add_mixed(&self, rhs: &G2Affine) -> G2Projective
Mixed addition with affine point.
Sourcepub fn clear_cofactor(&self) -> G2Projective
pub fn clear_cofactor(&self) -> G2Projective
Clear cofactor.
Sourcepub fn batch_normalize(p: &[Self], q: &mut [G2Affine])
pub fn batch_normalize(p: &[Self], q: &mut [G2Affine])
Batch conversion to affine.
Sourcepub fn is_identity(&self) -> Choice
pub fn is_identity(&self) -> Choice
Check if point at infinity.
Sourcepub fn is_on_curve(&self) -> Choice
pub fn is_on_curve(&self) -> Choice
Check if on curve y² = x³ + B.
Sourcepub fn from_bytes(bytes: &[u8; 96]) -> CtOption<Self>
pub fn from_bytes(bytes: &[u8; 96]) -> CtOption<Self>
Deserialize from compressed bytes.
Sourcepub fn from_bytes_unchecked(bytes: &[u8; 96]) -> CtOption<Self>
pub fn from_bytes_unchecked(bytes: &[u8; 96]) -> CtOption<Self>
Deserialize without validation.
Trait Implementations§
Source§impl<'a, 'b> Add<&'b G2Affine> for &'a G2Projective
impl<'a, 'b> Add<&'b G2Affine> for &'a G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§impl<'b> Add<&'b G2Affine> for G2Projective
impl<'b> Add<&'b G2Affine> for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§impl<'a, 'b> Add<&'b G2Projective> for &'a G2Affine
impl<'a, 'b> Add<&'b G2Projective> for &'a G2Affine
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§fn add(self, rhs: &'b G2Projective) -> G2Projective
fn add(self, rhs: &'b G2Projective) -> G2Projective
Performs the
+
operation. Read moreSource§impl<'a, 'b> Add<&'b G2Projective> for &'a G2Projective
impl<'a, 'b> Add<&'b G2Projective> for &'a G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§fn add(self, rhs: &'b G2Projective) -> G2Projective
fn add(self, rhs: &'b G2Projective) -> G2Projective
Performs the
+
operation. Read moreSource§impl<'b> Add<&'b G2Projective> for G2Affine
impl<'b> Add<&'b G2Projective> for G2Affine
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§fn add(self, rhs: &'b G2Projective) -> G2Projective
fn add(self, rhs: &'b G2Projective) -> G2Projective
Performs the
+
operation. Read moreSource§impl<'b> Add<&'b G2Projective> for G2Projective
impl<'b> Add<&'b G2Projective> for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§fn add(self, rhs: &'b G2Projective) -> G2Projective
fn add(self, rhs: &'b G2Projective) -> G2Projective
Performs the
+
operation. Read moreSource§impl<'a> Add<G2Affine> for &'a G2Projective
impl<'a> Add<G2Affine> for &'a G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§impl Add<G2Affine> for G2Projective
impl Add<G2Affine> for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§impl<'a> Add<G2Projective> for &'a G2Affine
impl<'a> Add<G2Projective> for &'a G2Affine
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§fn add(self, rhs: G2Projective) -> G2Projective
fn add(self, rhs: G2Projective) -> G2Projective
Performs the
+
operation. Read moreSource§impl<'a> Add<G2Projective> for &'a G2Projective
impl<'a> Add<G2Projective> for &'a G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§fn add(self, rhs: G2Projective) -> G2Projective
fn add(self, rhs: G2Projective) -> G2Projective
Performs the
+
operation. Read moreSource§impl Add<G2Projective> for G2Affine
impl Add<G2Projective> for G2Affine
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§fn add(self, rhs: G2Projective) -> G2Projective
fn add(self, rhs: G2Projective) -> G2Projective
Performs the
+
operation. Read moreSource§impl Add for G2Projective
impl Add for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
+
operator.Source§fn add(self, rhs: G2Projective) -> G2Projective
fn add(self, rhs: G2Projective) -> G2Projective
Performs the
+
operation. Read moreSource§impl<'b> AddAssign<&'b G2Affine> for G2Projective
impl<'b> AddAssign<&'b G2Affine> for G2Projective
Source§fn add_assign(&mut self, rhs: &'b G2Affine)
fn add_assign(&mut self, rhs: &'b G2Affine)
Performs the
+=
operation. Read moreSource§impl<'b> AddAssign<&'b G2Projective> for G2Projective
impl<'b> AddAssign<&'b G2Projective> for G2Projective
Source§fn add_assign(&mut self, rhs: &'b G2Projective)
fn add_assign(&mut self, rhs: &'b G2Projective)
Performs the
+=
operation. Read moreSource§impl AddAssign<G2Affine> for G2Projective
impl AddAssign<G2Affine> for G2Projective
Source§fn add_assign(&mut self, rhs: G2Affine)
fn add_assign(&mut self, rhs: G2Affine)
Performs the
+=
operation. Read moreSource§impl AddAssign for G2Projective
impl AddAssign for G2Projective
Source§fn add_assign(&mut self, rhs: G2Projective)
fn add_assign(&mut self, rhs: G2Projective)
Performs the
+=
operation. Read moreSource§impl Clone for G2Projective
impl Clone for G2Projective
Source§fn clone(&self) -> G2Projective
fn clone(&self) -> G2Projective
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl ConditionallySelectable for G2Projective
impl ConditionallySelectable for G2Projective
Source§fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self
fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self
Source§fn conditional_assign(&mut self, other: &Self, choice: Choice)
fn conditional_assign(&mut self, other: &Self, choice: Choice)
Source§fn conditional_swap(a: &mut Self, b: &mut Self, choice: Choice)
fn conditional_swap(a: &mut Self, b: &mut Self, choice: Choice)
Conditionally swap
self
and other
if choice == 1
; otherwise,
reassign both unto themselves. Read moreSource§impl ConstantTimeEq for G2Projective
impl ConstantTimeEq for G2Projective
Source§impl Debug for G2Projective
impl Debug for G2Projective
Source§impl Default for G2Projective
impl Default for G2Projective
Source§fn default() -> G2Projective
fn default() -> G2Projective
Returns the “default value” for a type. Read more
Source§impl Display for G2Projective
impl Display for G2Projective
Source§impl<'a> From<&'a G2Affine> for G2Projective
impl<'a> From<&'a G2Affine> for G2Projective
Source§fn from(p: &'a G2Affine) -> G2Projective
fn from(p: &'a G2Affine) -> G2Projective
Converts to this type from the input type.
Source§impl<'a> From<&'a G2Projective> for G2Affine
impl<'a> From<&'a G2Projective> for G2Affine
Source§fn from(p: &'a G2Projective) -> G2Affine
fn from(p: &'a G2Projective) -> G2Affine
Converts to this type from the input type.
Source§impl From<G2Affine> for G2Projective
impl From<G2Affine> for G2Projective
Source§fn from(p: G2Affine) -> G2Projective
fn from(p: G2Affine) -> G2Projective
Converts to this type from the input type.
Source§impl From<G2Projective> for G2Affine
impl From<G2Projective> for G2Affine
Source§fn from(p: G2Projective) -> G2Affine
fn from(p: G2Projective) -> G2Affine
Converts to this type from the input type.
Source§impl<'a, 'b> Mul<&'b G2Projective> for &'a Scalar
impl<'a, 'b> Mul<&'b G2Projective> for &'a Scalar
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
*
operator.Source§impl<'b> Mul<&'b G2Projective> for Scalar
impl<'b> Mul<&'b G2Projective> for Scalar
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
*
operator.Source§fn mul(self, rhs: &'b G2Projective) -> G2Projective
fn mul(self, rhs: &'b G2Projective) -> G2Projective
Performs the
*
operation. Read moreSource§impl<'a, 'b> Mul<&'b Scalar> for &'a G2Projective
impl<'a, 'b> Mul<&'b Scalar> for &'a G2Projective
Source§impl<'b> Mul<&'b Scalar> for G2Projective
impl<'b> Mul<&'b Scalar> for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
*
operator.Source§impl<'a> Mul<G2Projective> for &'a Scalar
impl<'a> Mul<G2Projective> for &'a Scalar
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
*
operator.Source§fn mul(self, rhs: G2Projective) -> G2Projective
fn mul(self, rhs: G2Projective) -> G2Projective
Performs the
*
operation. Read moreSource§impl Mul<G2Projective> for Scalar
impl Mul<G2Projective> for Scalar
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
*
operator.Source§fn mul(self, rhs: G2Projective) -> G2Projective
fn mul(self, rhs: G2Projective) -> G2Projective
Performs the
*
operation. Read moreSource§impl<'a> Mul<Scalar> for &'a G2Projective
impl<'a> Mul<Scalar> for &'a G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
*
operator.Source§impl Mul<Scalar> for G2Projective
impl Mul<Scalar> for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
*
operator.Source§impl<'b> MulAssign<&'b Scalar> for G2Projective
impl<'b> MulAssign<&'b Scalar> for G2Projective
Source§fn mul_assign(&mut self, rhs: &'b Scalar)
fn mul_assign(&mut self, rhs: &'b Scalar)
Performs the
*=
operation. Read moreSource§impl MulAssign<Scalar> for G2Projective
impl MulAssign<Scalar> for G2Projective
Source§fn mul_assign(&mut self, rhs: Scalar)
fn mul_assign(&mut self, rhs: Scalar)
Performs the
*=
operation. Read moreSource§impl<'a> Neg for &'a G2Projective
impl<'a> Neg for &'a G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§fn neg(self) -> G2Projective
fn neg(self) -> G2Projective
Performs the unary
-
operation. Read moreSource§impl Neg for G2Projective
impl Neg for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§fn neg(self) -> G2Projective
fn neg(self) -> G2Projective
Performs the unary
-
operation. Read moreSource§impl PartialEq for G2Projective
impl PartialEq for G2Projective
Source§impl<'a, 'b> Sub<&'b G2Affine> for &'a G2Projective
impl<'a, 'b> Sub<&'b G2Affine> for &'a G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§impl<'b> Sub<&'b G2Affine> for G2Projective
impl<'b> Sub<&'b G2Affine> for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§impl<'a, 'b> Sub<&'b G2Projective> for &'a G2Affine
impl<'a, 'b> Sub<&'b G2Projective> for &'a G2Affine
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§fn sub(self, rhs: &'b G2Projective) -> G2Projective
fn sub(self, rhs: &'b G2Projective) -> G2Projective
Performs the
-
operation. Read moreSource§impl<'a, 'b> Sub<&'b G2Projective> for &'a G2Projective
impl<'a, 'b> Sub<&'b G2Projective> for &'a G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§fn sub(self, rhs: &'b G2Projective) -> G2Projective
fn sub(self, rhs: &'b G2Projective) -> G2Projective
Performs the
-
operation. Read moreSource§impl<'b> Sub<&'b G2Projective> for G2Affine
impl<'b> Sub<&'b G2Projective> for G2Affine
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§fn sub(self, rhs: &'b G2Projective) -> G2Projective
fn sub(self, rhs: &'b G2Projective) -> G2Projective
Performs the
-
operation. Read moreSource§impl<'b> Sub<&'b G2Projective> for G2Projective
impl<'b> Sub<&'b G2Projective> for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§fn sub(self, rhs: &'b G2Projective) -> G2Projective
fn sub(self, rhs: &'b G2Projective) -> G2Projective
Performs the
-
operation. Read moreSource§impl<'a> Sub<G2Affine> for &'a G2Projective
impl<'a> Sub<G2Affine> for &'a G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§impl Sub<G2Affine> for G2Projective
impl Sub<G2Affine> for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§impl<'a> Sub<G2Projective> for &'a G2Affine
impl<'a> Sub<G2Projective> for &'a G2Affine
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§fn sub(self, rhs: G2Projective) -> G2Projective
fn sub(self, rhs: G2Projective) -> G2Projective
Performs the
-
operation. Read moreSource§impl<'a> Sub<G2Projective> for &'a G2Projective
impl<'a> Sub<G2Projective> for &'a G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§fn sub(self, rhs: G2Projective) -> G2Projective
fn sub(self, rhs: G2Projective) -> G2Projective
Performs the
-
operation. Read moreSource§impl Sub<G2Projective> for G2Affine
impl Sub<G2Projective> for G2Affine
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§fn sub(self, rhs: G2Projective) -> G2Projective
fn sub(self, rhs: G2Projective) -> G2Projective
Performs the
-
operation. Read moreSource§impl Sub for G2Projective
impl Sub for G2Projective
Source§type Output = G2Projective
type Output = G2Projective
The resulting type after applying the
-
operator.Source§fn sub(self, rhs: G2Projective) -> G2Projective
fn sub(self, rhs: G2Projective) -> G2Projective
Performs the
-
operation. Read moreSource§impl<'b> SubAssign<&'b G2Affine> for G2Projective
impl<'b> SubAssign<&'b G2Affine> for G2Projective
Source§fn sub_assign(&mut self, rhs: &'b G2Affine)
fn sub_assign(&mut self, rhs: &'b G2Affine)
Performs the
-=
operation. Read moreSource§impl<'b> SubAssign<&'b G2Projective> for G2Projective
impl<'b> SubAssign<&'b G2Projective> for G2Projective
Source§fn sub_assign(&mut self, rhs: &'b G2Projective)
fn sub_assign(&mut self, rhs: &'b G2Projective)
Performs the
-=
operation. Read moreSource§impl SubAssign<G2Affine> for G2Projective
impl SubAssign<G2Affine> for G2Projective
Source§fn sub_assign(&mut self, rhs: G2Affine)
fn sub_assign(&mut self, rhs: G2Affine)
Performs the
-=
operation. Read moreSource§impl SubAssign for G2Projective
impl SubAssign for G2Projective
Source§fn sub_assign(&mut self, rhs: G2Projective)
fn sub_assign(&mut self, rhs: G2Projective)
Performs the
-=
operation. Read moreSource§impl<T> Sum<T> for G2Projectivewhere
T: Borrow<G2Projective>,
impl<T> Sum<T> for G2Projectivewhere
T: Borrow<G2Projective>,
impl Copy for G2Projective
impl DefaultIsZeroes for G2Projective
impl Eq for G2Projective
Auto Trait Implementations§
impl Freeze for G2Projective
impl RefUnwindSafe for G2Projective
impl Send for G2Projective
impl Sync for G2Projective
impl Unpin for G2Projective
impl UnwindSafe for G2Projective
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more