Skip to main content

BatchInvert

Trait BatchInvert 

Source
pub trait BatchInvert<F: Field> {
    // Required method
    fn batch_invert(self) -> F;
}
Available on crate feature alloc only.
Expand description

Extension trait for iterators over mutable field elements which allows those field elements to be inverted in a batch.

I: IntoIterator<Item = &'a mut F: Field + ConstantTimeEq> implements this trait when the alloc feature flag is enabled.

For non-allocating contexts, see the BatchInverter struct.

Required Methods§

Source

fn batch_invert(self) -> F

Consumes this iterator and inverts each field element (when nonzero). Zero-valued elements are left as zero.

Returns the inverse of the product of all nonzero field elements.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<'a, F, I> BatchInvert<F> for I
where F: Field + ConstantTimeEq, I: IntoIterator<Item = &'a mut F>,