Struct k256::ProjectivePoint [−][src]
pub struct ProjectivePoint { /* fields omitted */ }
arithmetic
only.A point on the secp256k1 curve in projective coordinates.
Implementations
impl ProjectivePoint
[src]
impl ProjectivePoint
[src]pub const fn identity() -> ProjectivePoint
[src]
Returns the additive identity of SECP256k1, also known as the “neutral element” or “point at infinity”.
pub fn generator() -> ProjectivePoint
[src]
Returns the base point of SECP256k1.
pub fn to_affine(&self) -> AffinePoint
[src]
Returns the affine representation of this point, or None
if it is the identity.
pub fn double(&self) -> ProjectivePoint
[src]
Doubles this point.
pub fn endomorphism(&self) -> Self
[src]
Calculates SECP256k1 endomorphism: self * lambda
.
Trait Implementations
impl Add<&'_ AffinePoint> for &ProjectivePoint
[src]
impl Add<&'_ AffinePoint> for &ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the +
operator.
fn add(self, other: &AffinePoint) -> ProjectivePoint
[src]
impl Add<&'_ AffinePoint> for ProjectivePoint
[src]
impl Add<&'_ AffinePoint> for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the +
operator.
fn add(self, other: &AffinePoint) -> ProjectivePoint
[src]
impl Add<&'_ ProjectivePoint> for &ProjectivePoint
[src]
impl Add<&'_ ProjectivePoint> for &ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the +
operator.
fn add(self, other: &ProjectivePoint) -> ProjectivePoint
[src]
impl Add<&'_ ProjectivePoint> for ProjectivePoint
[src]
impl Add<&'_ ProjectivePoint> for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the +
operator.
fn add(self, other: &ProjectivePoint) -> ProjectivePoint
[src]
impl Add<AffinePoint> for ProjectivePoint
[src]
impl Add<AffinePoint> for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the +
operator.
fn add(self, other: AffinePoint) -> ProjectivePoint
[src]
impl Add<ProjectivePoint> for ProjectivePoint
[src]
impl Add<ProjectivePoint> for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the +
operator.
fn add(self, other: ProjectivePoint) -> ProjectivePoint
[src]
impl AddAssign<&'_ AffinePoint> for ProjectivePoint
[src]
impl AddAssign<&'_ AffinePoint> for ProjectivePoint
[src]fn add_assign(&mut self, rhs: &AffinePoint)
[src]
impl AddAssign<&'_ ProjectivePoint> for ProjectivePoint
[src]
impl AddAssign<&'_ ProjectivePoint> for ProjectivePoint
[src]fn add_assign(&mut self, rhs: &ProjectivePoint)
[src]
impl AddAssign<AffinePoint> for ProjectivePoint
[src]
impl AddAssign<AffinePoint> for ProjectivePoint
[src]fn add_assign(&mut self, rhs: AffinePoint)
[src]
impl AddAssign<ProjectivePoint> for ProjectivePoint
[src]
impl AddAssign<ProjectivePoint> for ProjectivePoint
[src]fn add_assign(&mut self, rhs: ProjectivePoint)
[src]
impl Clone for ProjectivePoint
[src]
impl Clone for ProjectivePoint
[src]fn clone(&self) -> ProjectivePoint
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl ConditionallySelectable for ProjectivePoint
[src]
impl ConditionallySelectable for ProjectivePoint
[src]fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self
[src]
pub fn conditional_assign(&mut self, other: &Self, choice: Choice)
[src]
pub fn conditional_swap(a: &mut Self, b: &mut Self, choice: Choice)
[src]
impl ConstantTimeEq for ProjectivePoint
[src]
impl ConstantTimeEq for ProjectivePoint
[src]impl Copy for ProjectivePoint
[src]
impl Copy for ProjectivePoint
[src]impl Curve for ProjectivePoint
[src]
impl Curve for ProjectivePoint
[src]type AffineRepr = AffinePoint
The affine representation for this elliptic curve.
fn to_affine(&self) -> AffinePoint
[src]
pub fn batch_normalize(p: &[Self], q: &mut [Self::AffineRepr])
impl Default for ProjectivePoint
[src]
impl Default for ProjectivePoint
[src]impl Eq for ProjectivePoint
[src]
impl Eq for ProjectivePoint
[src]impl From<AffinePoint> for ProjectivePoint
[src]
impl From<AffinePoint> for ProjectivePoint
[src]fn from(p: AffinePoint) -> Self
[src]
impl FromEncodedPoint<Secp256k1> for ProjectivePoint
[src]
impl FromEncodedPoint<Secp256k1> for ProjectivePoint
[src]fn from_encoded_point(p: &EncodedPoint) -> Option<Self>
[src]
impl Group for ProjectivePoint
[src]
impl Group for ProjectivePoint
[src]impl Mul<&'_ Scalar> for &ProjectivePoint
[src]
impl Mul<&'_ Scalar> for &ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the *
operator.
fn mul(self, other: &Scalar) -> ProjectivePoint
[src]
impl Mul<&'_ Scalar> for ProjectivePoint
[src]
impl Mul<&'_ Scalar> for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the *
operator.
fn mul(self, other: &Scalar) -> ProjectivePoint
[src]
impl Mul<Scalar> for ProjectivePoint
[src]
impl Mul<Scalar> for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the *
operator.
fn mul(self, other: Scalar) -> ProjectivePoint
[src]
impl MulAssign<&'_ Scalar> for ProjectivePoint
[src]
impl MulAssign<&'_ Scalar> for ProjectivePoint
[src]fn mul_assign(&mut self, rhs: &Scalar)
[src]
impl MulAssign<Scalar> for ProjectivePoint
[src]
impl MulAssign<Scalar> for ProjectivePoint
[src]fn mul_assign(&mut self, rhs: Scalar)
[src]
impl Neg for ProjectivePoint
[src]
impl Neg for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the -
operator.
fn neg(self) -> ProjectivePoint
[src]
impl<'a> Neg for &'a ProjectivePoint
[src]
impl<'a> Neg for &'a ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the -
operator.
fn neg(self) -> ProjectivePoint
[src]
impl PartialEq<ProjectivePoint> for ProjectivePoint
[src]
impl PartialEq<ProjectivePoint> for ProjectivePoint
[src]impl Sub<&'_ AffinePoint> for &ProjectivePoint
[src]
impl Sub<&'_ AffinePoint> for &ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the -
operator.
fn sub(self, other: &AffinePoint) -> ProjectivePoint
[src]
impl Sub<&'_ AffinePoint> for ProjectivePoint
[src]
impl Sub<&'_ AffinePoint> for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the -
operator.
fn sub(self, other: &AffinePoint) -> ProjectivePoint
[src]
impl Sub<&'_ ProjectivePoint> for &ProjectivePoint
[src]
impl Sub<&'_ ProjectivePoint> for &ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the -
operator.
fn sub(self, other: &ProjectivePoint) -> ProjectivePoint
[src]
impl Sub<&'_ ProjectivePoint> for ProjectivePoint
[src]
impl Sub<&'_ ProjectivePoint> for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the -
operator.
fn sub(self, other: &ProjectivePoint) -> ProjectivePoint
[src]
impl Sub<AffinePoint> for ProjectivePoint
[src]
impl Sub<AffinePoint> for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the -
operator.
fn sub(self, other: AffinePoint) -> ProjectivePoint
[src]
impl Sub<ProjectivePoint> for ProjectivePoint
[src]
impl Sub<ProjectivePoint> for ProjectivePoint
[src]type Output = ProjectivePoint
The resulting type after applying the -
operator.
fn sub(self, other: ProjectivePoint) -> ProjectivePoint
[src]
impl SubAssign<&'_ AffinePoint> for ProjectivePoint
[src]
impl SubAssign<&'_ AffinePoint> for ProjectivePoint
[src]fn sub_assign(&mut self, rhs: &AffinePoint)
[src]
impl SubAssign<&'_ ProjectivePoint> for ProjectivePoint
[src]
impl SubAssign<&'_ ProjectivePoint> for ProjectivePoint
[src]fn sub_assign(&mut self, rhs: &ProjectivePoint)
[src]
impl SubAssign<AffinePoint> for ProjectivePoint
[src]
impl SubAssign<AffinePoint> for ProjectivePoint
[src]fn sub_assign(&mut self, rhs: AffinePoint)
[src]
impl SubAssign<ProjectivePoint> for ProjectivePoint
[src]
impl SubAssign<ProjectivePoint> for ProjectivePoint
[src]fn sub_assign(&mut self, rhs: ProjectivePoint)
[src]
impl<'a> Sum<&'a ProjectivePoint> for ProjectivePoint
[src]
impl<'a> Sum<&'a ProjectivePoint> for ProjectivePoint
[src]fn sum<I: Iterator<Item = &'a ProjectivePoint>>(iter: I) -> Self
[src]
impl Sum<ProjectivePoint> for ProjectivePoint
[src]
impl Sum<ProjectivePoint> for ProjectivePoint
[src]Auto Trait Implementations
impl RefUnwindSafe for ProjectivePoint
impl RefUnwindSafe for ProjectivePoint
impl Send for ProjectivePoint
impl Send for ProjectivePoint
impl Sync for ProjectivePoint
impl Sync for ProjectivePoint
impl Unpin for ProjectivePoint
impl Unpin for ProjectivePoint
impl UnwindSafe for ProjectivePoint
impl UnwindSafe for ProjectivePoint
Blanket Implementations
impl<T> ConditionallyNegatable for T where
T: ConditionallySelectable,
&'a T: for<'a> Neg,
<&'a T as Neg>::Output == T,
[src]
impl<T> ConditionallyNegatable for T where
T: ConditionallySelectable,
&'a T: for<'a> Neg,
<&'a T as Neg>::Output == T,
[src]pub fn conditional_negate(&mut self, choice: Choice)
[src]
impl<T> FmtForward for T
impl<T> FmtForward for T
pub fn fmt_binary(self) -> FmtBinary<Self> where
Self: Binary,
Self: Binary,
pub fn fmt_display(self) -> FmtDisplay<Self> where
Self: Display,
Self: Display,
pub fn fmt_lower_exp(self) -> FmtLowerExp<Self> where
Self: LowerExp,
Self: LowerExp,
pub fn fmt_lower_hex(self) -> FmtLowerHex<Self> where
Self: LowerHex,
Self: LowerHex,
pub fn fmt_octal(self) -> FmtOctal<Self> where
Self: Octal,
Self: Octal,
pub fn fmt_pointer(self) -> FmtPointer<Self> where
Self: Pointer,
Self: Pointer,
pub fn fmt_upper_exp(self) -> FmtUpperExp<Self> where
Self: UpperExp,
Self: UpperExp,
pub fn fmt_upper_hex(self) -> FmtUpperHex<Self> where
Self: UpperHex,
Self: UpperHex,
impl<T, Rhs, Output> GroupOps<Rhs, Output> for T where
T: Add<Rhs, Output = Output> + Sub<Rhs, Output = Output> + AddAssign<Rhs> + SubAssign<Rhs>,
impl<T, Rhs, Output> GroupOps<Rhs, Output> for T where
T: Add<Rhs, Output = Output> + Sub<Rhs, Output = Output> + AddAssign<Rhs> + SubAssign<Rhs>,
impl<T, Rhs, Output> GroupOpsOwned<Rhs, Output> for T where
T: for<'r> GroupOps<&'r Rhs, Output>,
impl<T, Rhs, Output> GroupOpsOwned<Rhs, Output> for T where
T: for<'r> GroupOps<&'r Rhs, Output>,
impl<T> Pipe for T where
T: ?Sized,
impl<T> Pipe for T where
T: ?Sized,
pub fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
pub fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R where
R: 'a,
R: 'a,
pub fn pipe_ref_mut<'a, R>(
&'a mut self,
func: impl FnOnce(&'a mut Self) -> R
) -> R where
R: 'a,
&'a mut self,
func: impl FnOnce(&'a mut Self) -> R
) -> R where
R: 'a,
pub fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R where
Self: Borrow<B>,
R: 'a,
B: 'a + ?Sized,
Self: Borrow<B>,
R: 'a,
B: 'a + ?Sized,
pub fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> R where
Self: BorrowMut<B>,
R: 'a,
B: 'a + ?Sized,
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> R where
Self: BorrowMut<B>,
R: 'a,
B: 'a + ?Sized,
pub fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R where
Self: AsRef<U>,
R: 'a,
U: 'a + ?Sized,
Self: AsRef<U>,
R: 'a,
U: 'a + ?Sized,
pub fn pipe_as_mut<'a, U, R>(
&'a mut self,
func: impl FnOnce(&'a mut U) -> R
) -> R where
Self: AsMut<U>,
R: 'a,
U: 'a + ?Sized,
&'a mut self,
func: impl FnOnce(&'a mut U) -> R
) -> R where
Self: AsMut<U>,
R: 'a,
U: 'a + ?Sized,
pub fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: Deref<Target = T>,
R: 'a,
T: 'a + ?Sized,
Self: Deref<Target = T>,
R: 'a,
T: 'a + ?Sized,
pub fn pipe_deref_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: DerefMut<Target = T> + Deref,
R: 'a,
T: 'a + ?Sized,
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: DerefMut<Target = T> + Deref,
R: 'a,
T: 'a + ?Sized,
impl<T> PipeAsRef for T
impl<T> PipeAsRef for T
pub fn pipe_as_ref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: AsRef<T>,
R: 'a,
T: 'a,
Self: AsRef<T>,
R: 'a,
T: 'a,
pub fn pipe_as_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: AsMut<T>,
R: 'a,
T: 'a,
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: AsMut<T>,
R: 'a,
T: 'a,
impl<T> PipeBorrow for T
impl<T> PipeBorrow for T
pub fn pipe_borrow<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: Borrow<T>,
R: 'a,
T: 'a,
Self: Borrow<T>,
R: 'a,
T: 'a,
pub fn pipe_borrow_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: BorrowMut<T>,
R: 'a,
T: 'a,
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: BorrowMut<T>,
R: 'a,
T: 'a,
impl<T> PipeDeref for T
impl<T> PipeDeref for T
pub fn pipe_deref<'a, R>(
&'a self,
func: impl FnOnce(&'a Self::Target) -> R
) -> R where
Self: Deref,
R: 'a,
&'a self,
func: impl FnOnce(&'a Self::Target) -> R
) -> R where
Self: Deref,
R: 'a,
pub fn pipe_deref_mut<'a, R>(
&'a mut self,
func: impl FnOnce(&'a mut Self::Target) -> R
) -> R where
Self: DerefMut,
R: 'a,
&'a mut self,
func: impl FnOnce(&'a mut Self::Target) -> R
) -> R where
Self: DerefMut,
R: 'a,
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, Rhs, Output> ScalarMul<Rhs, Output> for T where
T: Mul<Rhs, Output = Output> + MulAssign<Rhs>,
impl<T, Rhs, Output> ScalarMul<Rhs, Output> for T where
T: Mul<Rhs, Output = Output> + MulAssign<Rhs>,
impl<T, Rhs, Output> ScalarMulOwned<Rhs, Output> for T where
T: for<'r> ScalarMul<&'r Rhs, Output>,
impl<T, Rhs, Output> ScalarMulOwned<Rhs, Output> for T where
T: for<'r> ScalarMul<&'r Rhs, Output>,
impl<T> Tap for T
impl<T> Tap for T
pub fn tap(self, func: impl FnOnce(&Self)) -> Self
pub fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self
pub fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self where
Self: Borrow<B>,
B: ?Sized,
Self: Borrow<B>,
B: ?Sized,
pub fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self where
Self: BorrowMut<B>,
B: ?Sized,
Self: BorrowMut<B>,
B: ?Sized,
pub fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self where
Self: AsRef<R>,
R: ?Sized,
Self: AsRef<R>,
R: ?Sized,
pub fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self where
Self: AsMut<R>,
R: ?Sized,
Self: AsMut<R>,
R: ?Sized,
pub fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self where
Self: Deref<Target = T>,
T: ?Sized,
Self: Deref<Target = T>,
T: ?Sized,
pub fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self where
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
pub fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
pub fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
pub fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self where
Self: Borrow<B>,
B: ?Sized,
Self: Borrow<B>,
B: ?Sized,
pub fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self where
Self: BorrowMut<B>,
B: ?Sized,
Self: BorrowMut<B>,
B: ?Sized,
pub fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self where
Self: AsRef<R>,
R: ?Sized,
Self: AsRef<R>,
R: ?Sized,
pub fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self where
Self: AsMut<R>,
R: ?Sized,
Self: AsMut<R>,
R: ?Sized,
pub fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self where
Self: Deref<Target = T>,
T: ?Sized,
Self: Deref<Target = T>,
T: ?Sized,
pub fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self where
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
impl<T, U> TapAsRef<U> for T where
U: ?Sized,
impl<T, U> TapAsRef<U> for T where
U: ?Sized,
pub fn tap_ref<F, R>(self, func: F) -> Self where
Self: AsRef<T>,
F: FnOnce(&T) -> R,
Self: AsRef<T>,
F: FnOnce(&T) -> R,
pub fn tap_ref_dbg<F, R>(self, func: F) -> Self where
Self: AsRef<T>,
F: FnOnce(&T) -> R,
Self: AsRef<T>,
F: FnOnce(&T) -> R,
pub fn tap_ref_mut<F, R>(self, func: F) -> Self where
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
pub fn tap_ref_mut_dbg<F, R>(self, func: F) -> Self where
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
impl<T, U> TapBorrow<U> for T where
U: ?Sized,
impl<T, U> TapBorrow<U> for T where
U: ?Sized,
pub fn tap_borrow<F, R>(self, func: F) -> Self where
Self: Borrow<T>,
F: FnOnce(&T) -> R,
Self: Borrow<T>,
F: FnOnce(&T) -> R,
pub fn tap_borrow_dbg<F, R>(self, func: F) -> Self where
Self: Borrow<T>,
F: FnOnce(&T) -> R,
Self: Borrow<T>,
F: FnOnce(&T) -> R,
pub fn tap_borrow_mut<F, R>(self, func: F) -> Self where
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
pub fn tap_borrow_mut_dbg<F, R>(self, func: F) -> Self where
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
impl<T> TapDeref for T
impl<T> TapDeref for T
pub fn tap_deref<F, R>(self, func: F) -> Self where
Self: Deref,
F: FnOnce(&Self::Target) -> R,
Self: Deref,
F: FnOnce(&Self::Target) -> R,
pub fn tap_deref_dbg<F, R>(self, func: F) -> Self where
Self: Deref,
F: FnOnce(&Self::Target) -> R,
Self: Deref,
F: FnOnce(&Self::Target) -> R,
pub fn tap_deref_mut<F, R>(self, func: F) -> Self where
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
pub fn tap_deref_mut_dbg<F, R>(self, func: F) -> Self where
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,