Struct snarkvm_curves::templates::short_weierstrass::short_weierstrass_projective::GroupAffine[][src]

pub struct GroupAffine<P: Parameters> {
    pub x: P::BaseField,
    pub y: P::BaseField,
    pub infinity: bool,
    // some fields omitted
}

Fields

x: P::BaseFieldy: P::BaseFieldinfinity: bool

Implementations

impl<P: Parameters> GroupAffine<P>[src]

pub fn new(x: P::BaseField, y: P::BaseField, infinity: bool) -> Self[src]

pub fn scale_by_cofactor(&self) -> Self::Projective[src]

pub fn is_on_curve(&self) -> bool[src]

Checks that the current point is on the elliptic curve.

Trait Implementations

impl<P: Parameters> AffineCurve for GroupAffine<P>[src]

type BaseField = P::BaseField

type Projective = GroupProjective<P>

type ScalarField = P::ScalarField

fn from_x_coordinate(x: Self::BaseField, greatest: bool) -> Option<Self>[src]

Attempts to construct an affine point given an x-coordinate. The point is not guaranteed to be in the prime order subgroup.

If and only if greatest is set will the lexicographically largest y-coordinate be selected.

fn from_y_coordinate(_y: Self::BaseField, _greatest: bool) -> Option<Self>[src]

Attempts to construct an affine point given a y-coordinate. The point is not guaranteed to be in the prime order subgroup.

If and only if greatest is set will the lexicographically largest y-coordinate be selected.

fn is_on_curve(&self) -> bool[src]

Checks that the current point is on the elliptic curve.

impl<P: Parameters> CanonicalDeserialize for GroupAffine<P>[src]

impl<P: Parameters> CanonicalSerialize for GroupAffine<P>[src]

impl<P: Parameters> Clone for GroupAffine<P> where
    P: Parameters
[src]

impl<P: Parameters> ConstantSerializedSize for GroupAffine<P>[src]

impl<P: Parameters> Copy for GroupAffine<P> where
    P: Parameters
[src]

impl<P: Parameters> Debug for GroupAffine<P> where
    P: Parameters
[src]

impl<P: Parameters> Default for GroupAffine<P>[src]

impl<'de, P: Parameters> Deserialize<'de> for GroupAffine<P> where
    P::BaseField: Deserialize<'de>,
    P::BaseField: Deserialize<'de>, 
[src]

impl<P: Parameters> Display for GroupAffine<P>[src]

impl<P: Parameters> Eq for GroupAffine<P> where
    P: Parameters
[src]

impl<P: Parameters> From<GroupAffine<P>> for GroupProjective<P>[src]

impl<P: Parameters> From<GroupProjective<P>> for GroupAffine<P>[src]

impl<P: Parameters> FromBytes for GroupAffine<P>[src]

impl<P: Parameters> Hash for GroupAffine<P> where
    P: Parameters
[src]

impl<P: Parameters> Neg for GroupAffine<P>[src]

type Output = Self

The resulting type after applying the - operator.

impl<P: Parameters> PartialEq<GroupAffine<P>> for GroupAffine<P> where
    P: Parameters
[src]

impl<P: Parameters> Serialize for GroupAffine<P> where
    P::BaseField: Serialize,
    P::BaseField: Serialize
[src]

impl<P: Parameters> ToBytes for GroupAffine<P>[src]

impl<P: Parameters> Zero for GroupAffine<P>[src]

Auto Trait Implementations

impl<P> RefUnwindSafe for GroupAffine<P> where
    P: RefUnwindSafe,
    <P as ModelParameters>::BaseField: RefUnwindSafe

impl<P> Send for GroupAffine<P>

impl<P> Sync for GroupAffine<P>

impl<P> Unpin for GroupAffine<P> where
    P: Unpin,
    <P as ModelParameters>::BaseField: Unpin

impl<P> UnwindSafe for GroupAffine<P> where
    P: UnwindSafe,
    <P as ModelParameters>::BaseField: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,