elliptic_curve::ops

Trait LinearCombination

Source
pub trait LinearCombination: Group {
    // Provided method
    fn lincomb(x: &Self, k: &Self::Scalar, y: &Self, l: &Self::Scalar) -> Self { ... }
}
Expand description

Linear combination.

This trait enables crates to provide an optimized implementation of linear combinations (e.g. Shamir’s Trick), or otherwise provides a default non-optimized implementation.

Provided Methods§

Source

fn lincomb(x: &Self, k: &Self::Scalar, y: &Self, l: &Self::Scalar) -> Self

Calculates x * k + y * l.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<P: LinearCombinationExt<[(P, Self::Scalar); 2]>> LinearCombination for P

Blanket impl of the legacy LinearCombination trait for types which impl the new LinearCombinationExt trait for 2-element arrays.