pub trait BundleGadgets: Fancy {
// Provided methods
fn constant_bundle(
&mut self,
xs: &[u16],
ps: &[u16],
) -> Result<Bundle<Self::Item>, Self::Error> { ... }
fn output_bundle(
&mut self,
x: &Bundle<Self::Item>,
) -> Result<Option<Vec<u16>>, Self::Error> { ... }
fn output_bundles(
&mut self,
xs: &[Bundle<Self::Item>],
) -> Result<Option<Vec<Vec<u16>>>, Self::Error> { ... }
fn shift(
&mut self,
x: &Bundle<Self::Item>,
n: usize,
) -> Result<Bundle<Self::Item>, Self::Error> { ... }
fn shift_extend(
&mut self,
x: &Bundle<Self::Item>,
n: usize,
) -> Result<Bundle<Self::Item>, Self::Error> { ... }
}Expand description
Extension trait for Fancy which provides Bundle constructions which are not necessarily CRT nor binary-based.
Provided Methods§
Sourcefn constant_bundle(
&mut self,
xs: &[u16],
ps: &[u16],
) -> Result<Bundle<Self::Item>, Self::Error>
fn constant_bundle( &mut self, xs: &[u16], ps: &[u16], ) -> Result<Bundle<Self::Item>, Self::Error>
Creates a bundle of constant wires using moduli ps.
Sourcefn output_bundle(
&mut self,
x: &Bundle<Self::Item>,
) -> Result<Option<Vec<u16>>, Self::Error>
fn output_bundle( &mut self, x: &Bundle<Self::Item>, ) -> Result<Option<Vec<u16>>, Self::Error>
Output the wires that make up a bundle.
Sourcefn output_bundles(
&mut self,
xs: &[Bundle<Self::Item>],
) -> Result<Option<Vec<Vec<u16>>>, Self::Error>
fn output_bundles( &mut self, xs: &[Bundle<Self::Item>], ) -> Result<Option<Vec<Vec<u16>>>, Self::Error>
Output a slice of bundles.