pub trait Decomposer {
type Element;
type Iter: Iterator<Item = Self::Element>;
// Required methods
fn new(q: Self::Element, logb: usize, d: usize) -> Self;
fn decompose_to_vec(&self, v: &Self::Element) -> Vec<Self::Element>;
fn decompose_iter(&self, v: &Self::Element) -> Self::Iter;
fn decomposition_count(&self) -> DecompositionCount;
fn decomposition_base(&self) -> DecompostionLogBase;
fn gadget_vector(&self) -> Vec<Self::Element>;
}Required Associated Types§
Required Methods§
fn new(q: Self::Element, logb: usize, d: usize) -> Self
fn decompose_to_vec(&self, v: &Self::Element) -> Vec<Self::Element>
fn decompose_iter(&self, v: &Self::Element) -> Self::Iter
fn decomposition_count(&self) -> DecompositionCount
fn decomposition_base(&self) -> DecompostionLogBase
fn gadget_vector(&self) -> Vec<Self::Element>
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.