[−][src]Struct blstrs::G1Projective
This is an element of $\mathbb{G}_1$ represented in the projective coordinate space.
Implementations
impl G1Projective
[src]
pub fn to_compressed(&self) -> [u8; 48]
[src]
Serializes this element into compressed form.
pub fn to_uncompressed(&self) -> [u8; 96]
[src]
Serializes this element into uncompressed form.
pub fn from_uncompressed(bytes: &[u8; 96]) -> Option<Self>
[src]
Attempts to deserialize an uncompressed element.
pub fn from_uncompressed_unchecked(bytes: &[u8; 96]) -> Option<Self>
[src]
Attempts to deserialize an uncompressed element, not checking if the element is on the curve and not checking if it is in the correct subgroup.
This is dangerous to call unless you trust the bytes you are reading; otherwise,
API invariants may be broken. Please consider using from_uncompressed()
instead.
pub fn from_compressed(bytes: &[u8; 48]) -> Option<Self>
[src]
Attempts to deserialize a compressed element.
pub fn from_compressed_unchecked(bytes: &[u8; 48]) -> Option<Self>
[src]
Attempts to deserialize an uncompressed element, not checking if the element is in the correct subgroup.
This is dangerous to call unless you trust the bytes you are reading; otherwise,
API invariants may be broken. Please consider using from_compressed()
instead.
pub fn add(&self, rhs: &G1Projective) -> G1Projective
[src]
Adds this point to another point.
pub fn add_mixed(&self, rhs: &G1Affine) -> G1Projective
[src]
Adds this point to another point in the affine model.
pub fn is_on_curve(&self) -> bool
[src]
Returns true if this point is on the curve. This should always return true unless an "unchecked" API was used.
pub fn from_raw_unchecked(x: Fp, y: Fp, z: Fp) -> Self
[src]
pub fn x(&self) -> Fp
[src]
Returns the x coordinate.
pub fn y(&self) -> Fp
[src]
Returns the y coordinate.
pub fn z(&self) -> Fp
[src]
Returns the z coordinate.
Trait Implementations
impl<'a, 'b> Add<&'b G1Affine> for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: &'b G1Affine) -> G1Projective
[src]
impl<'b> Add<&'b G1Affine> for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: &'b G1Affine) -> G1Projective
[src]
impl<'a, 'b> Add<&'b G1Projective> for &'a G1Affine
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: &'b G1Projective) -> G1Projective
[src]
impl<'b> Add<&'b G1Projective> for G1Affine
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: &'b G1Projective) -> G1Projective
[src]
impl<'a, 'b> Add<&'b G1Projective> for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: &'b G1Projective) -> G1Projective
[src]
impl<'b> Add<&'b G1Projective> for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: &'b G1Projective) -> G1Projective
[src]
impl<'a> Add<G1Affine> for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: G1Affine) -> G1Projective
[src]
impl Add<G1Affine> for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: G1Affine) -> G1Projective
[src]
impl<'a> Add<G1Projective> for &'a G1Affine
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: G1Projective) -> G1Projective
[src]
impl Add<G1Projective> for G1Affine
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: G1Projective) -> G1Projective
[src]
impl<'a> Add<G1Projective> for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: G1Projective) -> G1Projective
[src]
impl Add<G1Projective> for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the +
operator.
fn add(self, rhs: G1Projective) -> G1Projective
[src]
impl<'b> AddAssign<&'b G1Affine> for G1Projective
[src]
fn add_assign(&mut self, rhs: &'b G1Affine)
[src]
impl<'b> AddAssign<&'b G1Projective> for G1Projective
[src]
fn add_assign(&mut self, rhs: &'b G1Projective)
[src]
impl AddAssign<G1Affine> for G1Projective
[src]
fn add_assign(&mut self, rhs: G1Affine)
[src]
impl AddAssign<G1Projective> for G1Projective
[src]
fn add_assign(&mut self, rhs: G1Projective)
[src]
impl Clone for G1Projective
[src]
fn clone(&self) -> G1Projective
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for G1Projective
[src]
impl CurveProjective for G1Projective
[src]
type Engine = Bls12
type Scalar = Scalar
type Base = Fp
type Affine = G1Affine
fn random<R: RngCore>(rng: &mut R) -> Self
[src]
fn zero() -> Self
[src]
fn one() -> Self
[src]
fn is_zero(&self) -> bool
[src]
fn is_normalized(&self) -> bool
[src]
fn batch_normalization<S: BorrowMut<Self>>(v: &mut [S])
[src]
fn double(&mut self)
[src]
fn add_assign(&mut self, other: &Self)
[src]
fn add_assign_mixed(&mut self, other: &Self::Affine)
[src]
fn negate(&mut self)
[src]
fn mul_assign<S: Into<<Self::Scalar as PrimeField>::Repr>>(&mut self, other: S)
[src]
fn into_affine(&self) -> Self::Affine
[src]
fn recommended_wnaf_for_scalar(
scalar: <Self::Scalar as PrimeField>::Repr
) -> usize
[src]
scalar: <Self::Scalar as PrimeField>::Repr
) -> usize
fn recommended_wnaf_for_num_scalars(num_scalars: usize) -> usize
[src]
fn hash(_msg: &[u8]) -> Self
[src]
fn sub_assign(&mut self, other: &Self)
[src]
impl Debug for G1Projective
[src]
impl Display for G1Projective
[src]
impl Eq for G1Projective
[src]
impl<'_> From<&'_ G1Affine> for G1Projective
[src]
fn from(p: &G1Affine) -> G1Projective
[src]
impl<'_> From<&'_ G1Projective> for G1Affine
[src]
fn from(p: &G1Projective) -> G1Affine
[src]
impl From<G1Affine> for G1Projective
[src]
fn from(p: G1Affine) -> G1Projective
[src]
impl From<G1Projective> for G1Affine
[src]
fn from(p: G1Projective) -> G1Affine
[src]
impl<'a, 'b> Mul<&'b Scalar> for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the *
operator.
fn mul(self, other: &'b Scalar) -> Self::Output
[src]
impl<'b> Mul<&'b Scalar> for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the *
operator.
fn mul(self, rhs: &'b Scalar) -> G1Projective
[src]
impl<'a> Mul<Scalar> for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the *
operator.
fn mul(self, rhs: Scalar) -> G1Projective
[src]
impl Mul<Scalar> for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the *
operator.
fn mul(self, rhs: Scalar) -> G1Projective
[src]
impl<'b> MulAssign<&'b Scalar> for G1Projective
[src]
fn mul_assign(&mut self, rhs: &'b Scalar)
[src]
impl MulAssign<Scalar> for G1Projective
[src]
fn mul_assign(&mut self, rhs: Scalar)
[src]
impl<'a> Neg for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn neg(self) -> G1Projective
[src]
impl Neg for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn neg(self) -> G1Projective
[src]
impl PartialEq<G1Projective> for G1Projective
[src]
impl<'a, 'b> Sub<&'b G1Affine> for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: &'b G1Affine) -> G1Projective
[src]
impl<'b> Sub<&'b G1Affine> for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: &'b G1Affine) -> G1Projective
[src]
impl<'a, 'b> Sub<&'b G1Projective> for &'a G1Affine
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: &'b G1Projective) -> G1Projective
[src]
impl<'b> Sub<&'b G1Projective> for G1Affine
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: &'b G1Projective) -> G1Projective
[src]
impl<'a, 'b> Sub<&'b G1Projective> for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: &'b G1Projective) -> G1Projective
[src]
impl<'b> Sub<&'b G1Projective> for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: &'b G1Projective) -> G1Projective
[src]
impl<'a> Sub<G1Affine> for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: G1Affine) -> G1Projective
[src]
impl Sub<G1Affine> for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: G1Affine) -> G1Projective
[src]
impl<'a> Sub<G1Projective> for &'a G1Affine
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: G1Projective) -> G1Projective
[src]
impl Sub<G1Projective> for G1Affine
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: G1Projective) -> G1Projective
[src]
impl<'a> Sub<G1Projective> for &'a G1Projective
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: G1Projective) -> G1Projective
[src]
impl Sub<G1Projective> for G1Projective
[src]
type Output = G1Projective
The resulting type after applying the -
operator.
fn sub(self, rhs: G1Projective) -> G1Projective
[src]
impl<'b> SubAssign<&'b G1Affine> for G1Projective
[src]
fn sub_assign(&mut self, rhs: &'b G1Affine)
[src]
impl<'b> SubAssign<&'b G1Projective> for G1Projective
[src]
fn sub_assign(&mut self, rhs: &'b G1Projective)
[src]
impl SubAssign<G1Affine> for G1Projective
[src]
fn sub_assign(&mut self, rhs: G1Affine)
[src]
impl SubAssign<G1Projective> for G1Projective
[src]
fn sub_assign(&mut self, rhs: G1Projective)
[src]
impl<T> Sum<T> for G1Projective where
T: Borrow<G1Projective>,
[src]
T: Borrow<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
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,