Struct dusk_bls12_381::G1Projective
source · [−]pub struct G1Projective { /* private fields */ }
Expand description
This is an element of $\mathbb{G}_1$ represented in the projective coordinate space.
Implementations
sourceimpl G1Projective
impl G1Projective
sourcepub fn identity() -> G1Projective
pub fn identity() -> G1Projective
Returns the identity of the group: the point at infinity.
sourcepub fn generator() -> G1Projective
pub fn generator() -> G1Projective
Returns a fixed generator of the group. See notes::design
for how this generator is chosen.
sourcepub fn double(&self) -> G1Projective
pub fn double(&self) -> G1Projective
Computes the doubling of this point.
sourcepub fn add(&self, rhs: &G1Projective) -> G1Projective
pub fn add(&self, rhs: &G1Projective) -> G1Projective
Adds this point to another point.
sourcepub fn add_mixed(&self, rhs: &G1Affine) -> G1Projective
pub fn add_mixed(&self, rhs: &G1Affine) -> G1Projective
Adds this point to another point in the affine model.
sourcepub fn clear_cofactor(&self) -> G1Projective
pub fn clear_cofactor(&self) -> G1Projective
Multiplies by $(1 - z)$, where $z$ is the parameter of BLS12-381, which suffices to clear the cofactor and map elliptic curve points to elements of $\mathbb{G}_1$.
sourcepub fn batch_normalize(p: &[Self], q: &mut [G1Affine])
pub fn batch_normalize(p: &[Self], q: &mut [G1Affine])
Converts a batch of G1Projective
elements into G1Affine
elements. This
function will panic if p.len() != q.len()
.
sourcepub fn is_identity(&self) -> Choice
pub fn is_identity(&self) -> Choice
Returns true if this element is the identity (the point at infinity).
sourcepub fn is_on_curve(&self) -> Choice
pub fn is_on_curve(&self) -> Choice
Returns true if this point is on the curve. This should always return true unless an “unchecked” API was used.
Trait Implementations
sourceimpl<'a, 'b> Add<&'b G1Affine> for &'a G1Projective
impl<'a, 'b> Add<&'b G1Affine> for &'a G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: &'b G1Affine) -> G1Projective
fn add(self, rhs: &'b G1Affine) -> G1Projective
Performs the +
operation. Read more
sourceimpl<'b> Add<&'b G1Affine> for G1Projective
impl<'b> Add<&'b G1Affine> for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: &'b G1Affine) -> G1Projective
fn add(self, rhs: &'b G1Affine) -> G1Projective
Performs the +
operation. Read more
sourceimpl<'a, 'b> Add<&'b G1Projective> for &'a G1Affine
impl<'a, 'b> Add<&'b G1Projective> for &'a G1Affine
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: &'b G1Projective) -> G1Projective
fn add(self, rhs: &'b G1Projective) -> G1Projective
Performs the +
operation. Read more
sourceimpl<'b> Add<&'b G1Projective> for G1Affine
impl<'b> Add<&'b G1Projective> for G1Affine
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: &'b G1Projective) -> G1Projective
fn add(self, rhs: &'b G1Projective) -> G1Projective
Performs the +
operation. Read more
sourceimpl<'a, 'b> Add<&'b G1Projective> for &'a G1Projective
impl<'a, 'b> Add<&'b G1Projective> for &'a G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: &'b G1Projective) -> G1Projective
fn add(self, rhs: &'b G1Projective) -> G1Projective
Performs the +
operation. Read more
sourceimpl<'b> Add<&'b G1Projective> for G1Projective
impl<'b> Add<&'b G1Projective> for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: &'b G1Projective) -> G1Projective
fn add(self, rhs: &'b G1Projective) -> G1Projective
Performs the +
operation. Read more
sourceimpl<'a> Add<G1Affine> for &'a G1Projective
impl<'a> Add<G1Affine> for &'a G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: G1Affine) -> G1Projective
fn add(self, rhs: G1Affine) -> G1Projective
Performs the +
operation. Read more
sourceimpl Add<G1Affine> for G1Projective
impl Add<G1Affine> for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: G1Affine) -> G1Projective
fn add(self, rhs: G1Affine) -> G1Projective
Performs the +
operation. Read more
sourceimpl<'a> Add<G1Projective> for &'a G1Affine
impl<'a> Add<G1Projective> for &'a G1Affine
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: G1Projective) -> G1Projective
fn add(self, rhs: G1Projective) -> G1Projective
Performs the +
operation. Read more
sourceimpl Add<G1Projective> for G1Affine
impl Add<G1Projective> for G1Affine
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: G1Projective) -> G1Projective
fn add(self, rhs: G1Projective) -> G1Projective
Performs the +
operation. Read more
sourceimpl<'a> Add<G1Projective> for &'a G1Projective
impl<'a> Add<G1Projective> for &'a G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: G1Projective) -> G1Projective
fn add(self, rhs: G1Projective) -> G1Projective
Performs the +
operation. Read more
sourceimpl Add<G1Projective> for G1Projective
impl Add<G1Projective> for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the +
operator.
sourcefn add(self, rhs: G1Projective) -> G1Projective
fn add(self, rhs: G1Projective) -> G1Projective
Performs the +
operation. Read more
sourceimpl<'b> AddAssign<&'b G1Affine> for G1Projective
impl<'b> AddAssign<&'b G1Affine> for G1Projective
sourcefn add_assign(&mut self, rhs: &'b G1Affine)
fn add_assign(&mut self, rhs: &'b G1Affine)
Performs the +=
operation. Read more
sourceimpl<'b> AddAssign<&'b G1Projective> for G1Projective
impl<'b> AddAssign<&'b G1Projective> for G1Projective
sourcefn add_assign(&mut self, rhs: &'b G1Projective)
fn add_assign(&mut self, rhs: &'b G1Projective)
Performs the +=
operation. Read more
sourceimpl AddAssign<G1Affine> for G1Projective
impl AddAssign<G1Affine> for G1Projective
sourcefn add_assign(&mut self, rhs: G1Affine)
fn add_assign(&mut self, rhs: G1Affine)
Performs the +=
operation. Read more
sourceimpl AddAssign<G1Projective> for G1Projective
impl AddAssign<G1Projective> for G1Projective
sourcefn add_assign(&mut self, rhs: G1Projective)
fn add_assign(&mut self, rhs: G1Projective)
Performs the +=
operation. Read more
sourceimpl Clone for G1Projective
impl Clone for G1Projective
sourcefn clone(&self) -> G1Projective
fn clone(&self) -> G1Projective
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl ConditionallySelectable for G1Projective
impl ConditionallySelectable for G1Projective
sourceimpl ConstantTimeEq for G1Projective
impl ConstantTimeEq for G1Projective
sourceimpl Debug for G1Projective
impl Debug for G1Projective
sourceimpl<'a> From<&'a G1Affine> for G1Projective
impl<'a> From<&'a G1Affine> for G1Projective
sourcefn from(p: &'a G1Affine) -> G1Projective
fn from(p: &'a G1Affine) -> G1Projective
Converts to this type from the input type.
sourceimpl<'a> From<&'a G1Projective> for G1Affine
impl<'a> From<&'a G1Projective> for G1Affine
sourcefn from(p: &'a G1Projective) -> G1Affine
fn from(p: &'a G1Projective) -> G1Affine
Converts to this type from the input type.
sourceimpl From<G1Affine> for G1Projective
impl From<G1Affine> for G1Projective
sourcefn from(p: G1Affine) -> G1Projective
fn from(p: G1Affine) -> G1Projective
Converts to this type from the input type.
sourceimpl From<G1Projective> for G1Affine
impl From<G1Projective> for G1Affine
sourcefn from(p: G1Projective) -> G1Affine
fn from(p: G1Projective) -> G1Affine
Converts to this type from the input type.
sourceimpl<'a, 'b> Mul<&'b Scalar> for &'a G1Projective
impl<'a, 'b> Mul<&'b Scalar> for &'a G1Projective
sourceimpl<'b> Mul<&'b Scalar> for G1Projective
impl<'b> Mul<&'b Scalar> for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b BlsScalar) -> G1Projective
fn mul(self, rhs: &'b BlsScalar) -> G1Projective
Performs the *
operation. Read more
sourceimpl<'a> Mul<Scalar> for &'a G1Projective
impl<'a> Mul<Scalar> for &'a G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: BlsScalar) -> G1Projective
fn mul(self, rhs: BlsScalar) -> G1Projective
Performs the *
operation. Read more
sourceimpl Mul<Scalar> for G1Projective
impl Mul<Scalar> for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: BlsScalar) -> G1Projective
fn mul(self, rhs: BlsScalar) -> G1Projective
Performs the *
operation. Read more
sourceimpl<'b> MulAssign<&'b Scalar> for G1Projective
impl<'b> MulAssign<&'b Scalar> for G1Projective
sourcefn mul_assign(&mut self, rhs: &'b BlsScalar)
fn mul_assign(&mut self, rhs: &'b BlsScalar)
Performs the *=
operation. Read more
sourceimpl MulAssign<Scalar> for G1Projective
impl MulAssign<Scalar> for G1Projective
sourcefn mul_assign(&mut self, rhs: BlsScalar)
fn mul_assign(&mut self, rhs: BlsScalar)
Performs the *=
operation. Read more
sourceimpl<'a> Neg for &'a G1Projective
impl<'a> Neg for &'a G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn neg(self) -> G1Projective
fn neg(self) -> G1Projective
Performs the unary -
operation. Read more
sourceimpl Neg for G1Projective
impl Neg for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn neg(self) -> G1Projective
fn neg(self) -> G1Projective
Performs the unary -
operation. Read more
sourceimpl PartialEq<G1Projective> for G1Projective
impl PartialEq<G1Projective> for G1Projective
sourceimpl<'a, 'b> Sub<&'b G1Affine> for &'a G1Projective
impl<'a, 'b> Sub<&'b G1Affine> for &'a G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: &'b G1Affine) -> G1Projective
fn sub(self, rhs: &'b G1Affine) -> G1Projective
Performs the -
operation. Read more
sourceimpl<'b> Sub<&'b G1Affine> for G1Projective
impl<'b> Sub<&'b G1Affine> for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: &'b G1Affine) -> G1Projective
fn sub(self, rhs: &'b G1Affine) -> G1Projective
Performs the -
operation. Read more
sourceimpl<'a, 'b> Sub<&'b G1Projective> for &'a G1Affine
impl<'a, 'b> Sub<&'b G1Projective> for &'a G1Affine
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: &'b G1Projective) -> G1Projective
fn sub(self, rhs: &'b G1Projective) -> G1Projective
Performs the -
operation. Read more
sourceimpl<'b> Sub<&'b G1Projective> for G1Affine
impl<'b> Sub<&'b G1Projective> for G1Affine
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: &'b G1Projective) -> G1Projective
fn sub(self, rhs: &'b G1Projective) -> G1Projective
Performs the -
operation. Read more
sourceimpl<'a, 'b> Sub<&'b G1Projective> for &'a G1Projective
impl<'a, 'b> Sub<&'b G1Projective> for &'a G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: &'b G1Projective) -> G1Projective
fn sub(self, rhs: &'b G1Projective) -> G1Projective
Performs the -
operation. Read more
sourceimpl<'b> Sub<&'b G1Projective> for G1Projective
impl<'b> Sub<&'b G1Projective> for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: &'b G1Projective) -> G1Projective
fn sub(self, rhs: &'b G1Projective) -> G1Projective
Performs the -
operation. Read more
sourceimpl<'a> Sub<G1Affine> for &'a G1Projective
impl<'a> Sub<G1Affine> for &'a G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: G1Affine) -> G1Projective
fn sub(self, rhs: G1Affine) -> G1Projective
Performs the -
operation. Read more
sourceimpl Sub<G1Affine> for G1Projective
impl Sub<G1Affine> for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: G1Affine) -> G1Projective
fn sub(self, rhs: G1Affine) -> G1Projective
Performs the -
operation. Read more
sourceimpl<'a> Sub<G1Projective> for &'a G1Affine
impl<'a> Sub<G1Projective> for &'a G1Affine
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: G1Projective) -> G1Projective
fn sub(self, rhs: G1Projective) -> G1Projective
Performs the -
operation. Read more
sourceimpl Sub<G1Projective> for G1Affine
impl Sub<G1Projective> for G1Affine
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: G1Projective) -> G1Projective
fn sub(self, rhs: G1Projective) -> G1Projective
Performs the -
operation. Read more
sourceimpl<'a> Sub<G1Projective> for &'a G1Projective
impl<'a> Sub<G1Projective> for &'a G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: G1Projective) -> G1Projective
fn sub(self, rhs: G1Projective) -> G1Projective
Performs the -
operation. Read more
sourceimpl Sub<G1Projective> for G1Projective
impl Sub<G1Projective> for G1Projective
type Output = G1Projective
type Output = G1Projective
The resulting type after applying the -
operator.
sourcefn sub(self, rhs: G1Projective) -> G1Projective
fn sub(self, rhs: G1Projective) -> G1Projective
Performs the -
operation. Read more
sourceimpl<'b> SubAssign<&'b G1Affine> for G1Projective
impl<'b> SubAssign<&'b G1Affine> for G1Projective
sourcefn sub_assign(&mut self, rhs: &'b G1Affine)
fn sub_assign(&mut self, rhs: &'b G1Affine)
Performs the -=
operation. Read more
sourceimpl<'b> SubAssign<&'b G1Projective> for G1Projective
impl<'b> SubAssign<&'b G1Projective> for G1Projective
sourcefn sub_assign(&mut self, rhs: &'b G1Projective)
fn sub_assign(&mut self, rhs: &'b G1Projective)
Performs the -=
operation. Read more
sourceimpl SubAssign<G1Affine> for G1Projective
impl SubAssign<G1Affine> for G1Projective
sourcefn sub_assign(&mut self, rhs: G1Affine)
fn sub_assign(&mut self, rhs: G1Affine)
Performs the -=
operation. Read more
sourceimpl SubAssign<G1Projective> for G1Projective
impl SubAssign<G1Projective> for G1Projective
sourcefn sub_assign(&mut self, rhs: G1Projective)
fn sub_assign(&mut self, rhs: G1Projective)
Performs the -=
operation. Read more
sourceimpl<T> Sum<T> for G1Projective where
T: Borrow<G1Projective>,
impl<T> Sum<T> for G1Projective where
T: Borrow<G1Projective>,
impl Copy for G1Projective
impl Eq for G1Projective
Auto Trait Implementations
impl RefUnwindSafe for G1Projective
impl Send for G1Projective
impl Sync for G1Projective
impl Unpin for G1Projective
impl UnwindSafe for G1Projective
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ConditionallyNegatable for T where
T: ConditionallySelectable,
&'a T: for<'a> Neg,
<&'a T as Neg>::Output == T,
impl<T> ConditionallyNegatable for T where
T: ConditionallySelectable,
&'a T: for<'a> Neg,
<&'a T as Neg>::Output == T,
sourcefn conditional_negate(&mut self, choice: Choice)
fn conditional_negate(&mut self, choice: Choice)
Negate self
if choice == Choice(1)
; otherwise, leave it
unchanged. Read more
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more