CachedPoint

Struct CachedPoint 

Source
pub struct CachedPoint(pub(super) FieldElement2625x4);
Expand description

A cached point with some precomputed variables used for readdition.

§Warning

It is not safe to negate this point more than once.

§Invariant

As long as the CachedPoint is not repeatedly negated, its coefficients will be bounded with \( b < 1.0 \).

Tuple Fields§

§0: FieldElement2625x4

Trait Implementations§

Source§

impl Add<&CachedPoint> for &ExtendedPoint

Source§

fn add(self, other: &CachedPoint) -> ExtendedPoint

Add an ExtendedPoint and a CachedPoint.

Source§

type Output = ExtendedPoint

The resulting type after applying the + operator.
Source§

impl Clone for CachedPoint

Source§

fn clone(&self) -> CachedPoint

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl ConditionallySelectable for CachedPoint

Source§

fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self

Select a or b according to choice. Read more
Source§

fn conditional_assign(&mut self, other: &Self, choice: Choice)

Conditionally assign other to self, according to choice. Read more
Source§

fn conditional_swap(a: &mut Self, b: &mut Self, choice: Choice)

Conditionally swap self and other if choice == 1; otherwise, reassign both unto themselves. Read more
Source§

impl Debug for CachedPoint

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for CachedPoint

Source§

fn default() -> CachedPoint

Returns the “default value” for a type. Read more
Source§

impl From<ExtendedPoint> for CachedPoint

Source§

fn from(P: ExtendedPoint) -> CachedPoint

Converts to this type from the input type.
Source§

impl Identity for CachedPoint

Source§

fn identity() -> CachedPoint

Returns the identity element of the curve. Can be used as a constructor.
Source§

impl Neg for &CachedPoint

Source§

fn neg(self) -> CachedPoint

Lazily negate the point.

§Warning

Because this method does not perform a reduction, it is not safe to repeatedly negate a point.

Source§

type Output = CachedPoint

The resulting type after applying the - operator.
Source§

impl Sub<&CachedPoint> for &ExtendedPoint

Source§

fn sub(self, other: &CachedPoint) -> ExtendedPoint

Implement subtraction by negating the point and adding.

Empirically, this seems about the same cost as a custom subtraction impl (maybe because the benefit is cancelled by increased code size?)

Source§

type Output = ExtendedPoint

The resulting type after applying the - operator.
Source§

impl Copy for CachedPoint

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> ConditionallyNegatable for T
where T: ConditionallySelectable, &'a T: for<'a> Neg<Output = T>,

Source§

fn conditional_negate(&mut self, choice: Choice)

Negate self if choice == Choice(1); otherwise, leave it unchanged. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.