Struct snarkvm_curves::templates::short_weierstrass::short_weierstrass_projective::GroupProjective [−][src]
pub struct GroupProjective<P: Parameters> { pub x: P::BaseField, pub y: P::BaseField, pub z: P::BaseField, // some fields omitted }
Fields
x: P::BaseField
y: P::BaseField
z: P::BaseField
Implementations
Trait Implementations
Performs the +=
operation. Read more
Reads Self
from reader
.
Reads Self
from reader
without compression.
Serializes self
into writer
.
Serializes self
into writer
without compression.
Performs the conversion.
Performs the conversion.
impl<'a, P: Parameters> MulAssign<&'a <P as ModelParameters>::ScalarField> for GroupProjective<P>
[src]
impl<'a, P: Parameters> MulAssign<&'a <P as ModelParameters>::ScalarField> for GroupProjective<P>
[src]Performs the *=
operation. Read more
type Affine = GroupAffine<P>
type ScalarField = P::ScalarField
Returns a fixed generator of unknown exponent.
Checks if the point is already “normalized” so that cheap affine conversion is possible. Read more
Normalizes a slice of projective elements so that conversion to affine is cheap. Read more
Adds an affine element to this element.
Performs scalar multiplication of this element.
Converts this element into its affine representation.
fn recommended_wnaf_for_scalar(
scalar: <Self::ScalarField as PrimeField>::BigInteger
) -> usize
[src]
fn recommended_wnaf_for_scalar(
scalar: <Self::ScalarField as PrimeField>::BigInteger
) -> usize
[src]Recommends a wNAF window table size given a scalar. Always returns a number between 2 and 22, inclusive. Read more
Recommends a wNAF window size given the number of scalars you intend to multiply a base by. Always returns a number between 2 and 22, inclusive. Read more
Normalizes a slice of projective elements and outputs a vector containing the affine equivalents. Read more
Performs the -=
operation. Read more
Auto Trait Implementations
impl<P> RefUnwindSafe for GroupProjective<P> where
P: RefUnwindSafe,
<P as ModelParameters>::BaseField: RefUnwindSafe,
impl<P> Send for GroupProjective<P>
impl<P> Sync for GroupProjective<P>
impl<P> Unpin for GroupProjective<P> where
P: Unpin,
<P as ModelParameters>::BaseField: Unpin,
impl<P> UnwindSafe for GroupProjective<P> where
P: UnwindSafe,
<P as ModelParameters>::BaseField: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
type ScalarField = <C as ProjectiveCurve>::ScalarField
Sets self := self + self
.
pub fn vzip(self) -> V