Skip to main content

FancyEncode

Trait FancyEncode 

Source
pub trait FancyEncode: Fancy {
    // Required methods
    fn encode_many(
        &mut self,
        values: &[u16],
        moduli: &[u16],
        channel: &mut Channel<'_>,
    ) -> Result<Vec<Self::Item>>;
    fn receive_many(
        &mut self,
        moduli: &[u16],
        channel: &mut Channel<'_>,
    ) -> Result<Vec<Self::Item>>;

    // Provided methods
    fn encode(
        &mut self,
        value: u16,
        modulus: u16,
        channel: &mut Channel<'_>,
    ) -> Result<Self::Item> { ... }
    fn receive(
        &mut self,
        modulus: u16,
        channel: &mut Channel<'_>,
    ) -> Result<Self::Item> { ... }
}
Expand description

Extension trait for Fancy that provides encoding and receiving operations.

Required Methods§

Source

fn encode_many( &mut self, values: &[u16], moduli: &[u16], channel: &mut Channel<'_>, ) -> Result<Vec<Self::Item>>

Encode many wires for known values.

Source

fn receive_many( &mut self, moduli: &[u16], channel: &mut Channel<'_>, ) -> Result<Vec<Self::Item>>

Receive many wires for unknown values.

Provided Methods§

Source

fn encode( &mut self, value: u16, modulus: u16, channel: &mut Channel<'_>, ) -> Result<Self::Item>

Encode a wire for a known value.

Source

fn receive( &mut self, modulus: u16, channel: &mut Channel<'_>, ) -> Result<Self::Item>

Receive a wire for an unknown value.

Implementors§