pub trait PolynomialVector:
Default
+ Sized
+ Index<usize>
+ IndexMut<usize> {
type Poly: Polynomial;
const K: usize;
// Required methods
fn ntt(&mut self);
fn ntt_and_reduce(&mut self);
fn inv_ntt_tomont(&mut self);
fn reduce(&mut self);
fn uniform_xof<const TRANSPOSED: bool>(&mut self, seed: &[u8; 32], i: u8);
fn basemul_acc(
&self,
other: &Self,
result: &mut <Self as PolynomialVector>::Poly,
);
}Required Associated Constants§
Required Associated Types§
type Poly: Polynomial
Required Methods§
fn ntt(&mut self)
fn ntt_and_reduce(&mut self)
fn inv_ntt_tomont(&mut self)
fn reduce(&mut self)
fn uniform_xof<const TRANSPOSED: bool>(&mut self, seed: &[u8; 32], i: u8)
fn basemul_acc( &self, other: &Self, result: &mut <Self as PolynomialVector>::Poly, )
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".