[][src]Trait fancy_garbling::FancyInput

pub trait FancyInput: Fancy {
    fn encode_many(
        &mut self,
        values: &[u16],
        moduli: &[u16]
    ) -> Result<Vec<Self::Item>, Self::Error>;
fn receive_many(
        &mut self,
        moduli: &[u16]
    ) -> Result<Vec<Self::Item>, Self::Error>; fn encode(
        &mut self,
        value: u16,
        modulus: u16
    ) -> Result<Self::Item, Self::Error> { ... }
fn receive(&mut self, modulus: u16) -> Result<Self::Item, Self::Error> { ... }
fn encode_bundle(
        &mut self,
        values: &[u16],
        moduli: &[u16]
    ) -> Result<Bundle<Self::Item>, Self::Error> { ... }
fn receive_bundle(
        &mut self,
        moduli: &[u16]
    ) -> Result<Bundle<Self::Item>, Self::Error> { ... }
fn encode_bundles(
        &mut self,
        values: &[Vec<u16>],
        moduli: &[Vec<u16>]
    ) -> Result<Vec<Bundle<Self::Item>>, Self::Error> { ... }
fn receive_many_bundles(
        &mut self,
        moduli: &[Vec<u16>]
    ) -> Result<Vec<Bundle<Self::Item>>, Self::Error> { ... }
fn crt_encode(
        &mut self,
        value: u128,
        modulus: u128
    ) -> Result<CrtBundle<Self::Item>, Self::Error> { ... }
fn crt_receive(
        &mut self,
        modulus: u128
    ) -> Result<CrtBundle<Self::Item>, Self::Error> { ... }
fn crt_encode_many(
        &mut self,
        values: &[u128],
        modulus: u128
    ) -> Result<Vec<CrtBundle<Self::Item>>, Self::Error> { ... }
fn crt_receive_many(
        &mut self,
        n: usize,
        modulus: u128
    ) -> Result<Vec<CrtBundle<Self::Item>>, Self::Error> { ... }
fn bin_encode(
        &mut self,
        value: u128,
        nbits: usize
    ) -> Result<BinaryBundle<Self::Item>, Self::Error> { ... }
fn bin_receive(
        &mut self,
        nbits: usize
    ) -> Result<BinaryBundle<Self::Item>, Self::Error> { ... }
fn bin_encode_many(
        &mut self,
        values: &[u128],
        nbits: usize
    ) -> Result<Vec<BinaryBundle<Self::Item>>, Self::Error> { ... }
fn bin_receive_many(
        &mut self,
        ninputs: usize,
        nbits: usize
    ) -> Result<Vec<BinaryBundle<Self::Item>>, Self::Error> { ... } }

Convenience functions for encoding input to Fancy objects.

Required methods

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

Encode many values where the actual input is known.

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

Receive many values where the input is not known.

Loading content...

Provided methods

fn encode(
    &mut self,
    value: u16,
    modulus: u16
) -> Result<Self::Item, Self::Error>

Encode a single value.

fn receive(&mut self, modulus: u16) -> Result<Self::Item, Self::Error>

Receive a single value.

fn encode_bundle(
    &mut self,
    values: &[u16],
    moduli: &[u16]
) -> Result<Bundle<Self::Item>, Self::Error>

Encode a bundle.

fn receive_bundle(
    &mut self,
    moduli: &[u16]
) -> Result<Bundle<Self::Item>, Self::Error>

Receive a bundle.

fn encode_bundles(
    &mut self,
    values: &[Vec<u16>],
    moduli: &[Vec<u16>]
) -> Result<Vec<Bundle<Self::Item>>, Self::Error>

Encode many input bundles.

fn receive_many_bundles(
    &mut self,
    moduli: &[Vec<u16>]
) -> Result<Vec<Bundle<Self::Item>>, Self::Error>

Receive many input bundles.

fn crt_encode(
    &mut self,
    value: u128,
    modulus: u128
) -> Result<CrtBundle<Self::Item>, Self::Error>

Encode a CRT input bundle.

fn crt_receive(
    &mut self,
    modulus: u128
) -> Result<CrtBundle<Self::Item>, Self::Error>

Receive an CRT input bundle.

fn crt_encode_many(
    &mut self,
    values: &[u128],
    modulus: u128
) -> Result<Vec<CrtBundle<Self::Item>>, Self::Error>

Encode many CRT input bundles.

fn crt_receive_many(
    &mut self,
    n: usize,
    modulus: u128
) -> Result<Vec<CrtBundle<Self::Item>>, Self::Error>

Receive many CRT input bundles.

fn bin_encode(
    &mut self,
    value: u128,
    nbits: usize
) -> Result<BinaryBundle<Self::Item>, Self::Error>

Encode a binary input bundle.

fn bin_receive(
    &mut self,
    nbits: usize
) -> Result<BinaryBundle<Self::Item>, Self::Error>

Receive an binary input bundle.

fn bin_encode_many(
    &mut self,
    values: &[u128],
    nbits: usize
) -> Result<Vec<BinaryBundle<Self::Item>>, Self::Error>

Encode many binary input bundles.

fn bin_receive_many(
    &mut self,
    ninputs: usize,
    nbits: usize
) -> Result<Vec<BinaryBundle<Self::Item>>, Self::Error>

Receive many binary input bundles.

Loading content...

Implementors

impl FancyInput for Dummy[src]

fn encode(&mut self, value: u16, modulus: u16) -> Result<DummyVal, DummyError>[src]

Encode a single dummy value.

fn encode_many(
    &mut self,
    xs: &[u16],
    moduli: &[u16]
) -> Result<Vec<DummyVal>, DummyError>
[src]

Encode a slice of inputs and a slice of moduli as DummyVals.

impl FancyInput for Informer[src]

Loading content...