Trait vsss_rs::Share

source ·
pub trait Share: Sized + Clone + Eq + PartialEq {
    type Identifier: ShareIdentifier;

    // Required methods
    fn empty_share_with_capacity(size_hint: usize) -> Self;
    fn is_zero(&self) -> Choice;
    fn identifier(&self) -> Self::Identifier;
    fn identifier_mut(&mut self) -> &mut Self::Identifier;
    fn value(&self, buffer: &mut [u8]) -> VsssResult<()>;
    fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>;
    fn value_vec(&self) -> Vec<u8>;

    // Provided methods
    fn with_identifier_and_value(
        identifier: Self::Identifier,
        value: &[u8]
    ) -> Self { ... }
    fn as_group_element<G: GroupEncoding>(&self) -> VsssResult<G> { ... }
    fn from_group_element<G: GroupEncoding>(
        identifier: Self::Identifier,
        group: G
    ) -> VsssResult<Self> { ... }
    fn as_field_element<F: PrimeField>(&self) -> VsssResult<F> { ... }
    fn from_field_element<F: PrimeField>(
        identifier: Self::Identifier,
        field: F
    ) -> VsssResult<Self> { ... }
}
Expand description

The methods necessary for a secret share

Required Associated Types§

source

type Identifier: ShareIdentifier

The identifier type

Required Methods§

source

fn empty_share_with_capacity(size_hint: usize) -> Self

Create a new share with space equal to or greater than the size hint

source

fn is_zero(&self) -> Choice

True if all value bytes are zero

source

fn identifier(&self) -> Self::Identifier

The identifier for this share

source

fn identifier_mut(&mut self) -> &mut Self::Identifier

The mutable identifier for this share

source

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

The raw byte value of the share excluding the identifier is written to the buffer

source

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

The writeable raw byte value of the share excluding the identifier

source

fn value_vec(&self) -> Vec<u8>

The byte representation value of the share excluding the identifier

Provided Methods§

source

fn with_identifier_and_value(identifier: Self::Identifier, value: &[u8]) -> Self

Create a new share with the given identifier and value

source

fn as_group_element<G: GroupEncoding>(&self) -> VsssResult<G>

Convert this share into a group element

source

fn from_group_element<G: GroupEncoding>( identifier: Self::Identifier, group: G ) -> VsssResult<Self>

Convert group element into a share

source

fn as_field_element<F: PrimeField>(&self) -> VsssResult<F>

Convert this share into a prime field element

source

fn from_field_element<F: PrimeField>( identifier: Self::Identifier, field: F ) -> VsssResult<Self>

Convert field element into a share

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl Share for (u8, Vec<u8>)

§

type Identifier = u8

source§

fn empty_share_with_capacity(size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl Share for (u16, Vec<u8>)

§

type Identifier = u16

source§

fn empty_share_with_capacity(size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl Share for (u32, Vec<u8>)

§

type Identifier = u32

source§

fn empty_share_with_capacity(size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl Share for (u64, Vec<u8>)

§

type Identifier = u64

source§

fn empty_share_with_capacity(size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl Share for (u128, Vec<u8>)

§

type Identifier = u128

source§

fn empty_share_with_capacity(size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl Share for (usize, Vec<u8>)

§

type Identifier = usize

source§

fn empty_share_with_capacity(size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl Share for (Vec<u8>, Vec<u8>)

§

type Identifier = Vec<u8>

source§

fn empty_share_with_capacity(size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl Share for Vec<u8>

§

type Identifier = u8

source§

fn empty_share_with_capacity(size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<L: ArrayLength> Share for (u8, GenericArray<u8, L>)

§

type Identifier = u8

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<L: ArrayLength> Share for (u16, GenericArray<u8, L>)

§

type Identifier = u16

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<L: ArrayLength> Share for (u32, GenericArray<u8, L>)

§

type Identifier = u32

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<L: ArrayLength> Share for (u64, GenericArray<u8, L>)

§

type Identifier = u64

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<L: ArrayLength> Share for (u128, GenericArray<u8, L>)

§

type Identifier = u128

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<L: ArrayLength> Share for (usize, GenericArray<u8, L>)

§

type Identifier = usize

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<L: ArrayLength> Share for GenericArray<u8, L>

§

type Identifier = u8

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<L: ArrayLength<u8>> Share for GenericArray<u8, L>

§

type Identifier = u8

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<MOD: ResidueParams<LIMBS>, const LIMBS: usize> Share for (u8, Residue<MOD, LIMBS>)

§

type Identifier = u8

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<MOD: ResidueParams<LIMBS>, const LIMBS: usize> Share for (u16, Residue<MOD, LIMBS>)

§

type Identifier = u16

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<MOD: ResidueParams<LIMBS>, const LIMBS: usize> Share for (u32, Residue<MOD, LIMBS>)

§

type Identifier = u32

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<MOD: ResidueParams<LIMBS>, const LIMBS: usize> Share for (u64, Residue<MOD, LIMBS>)

§

type Identifier = u64

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<MOD: ResidueParams<LIMBS>, const LIMBS: usize> Share for (u128, Residue<MOD, LIMBS>)

§

type Identifier = u128

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<MOD: ResidueParams<LIMBS>, const LIMBS: usize> Share for (usize, Residue<MOD, LIMBS>)

§

type Identifier = usize

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const L: usize> Share for (u8, [u8; L])

§

type Identifier = u8

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const L: usize> Share for (u16, [u8; L])

§

type Identifier = u16

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const L: usize> Share for (u32, [u8; L])

§

type Identifier = u32

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const L: usize> Share for (u64, [u8; L])

§

type Identifier = u64

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const L: usize> Share for (u128, [u8; L])

§

type Identifier = u128

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const L: usize> Share for (usize, [u8; L])

§

type Identifier = usize

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const L: usize> Share for [u8; L]

§

type Identifier = u8

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (u8, DynResidue<LIMBS>)

§

type Identifier = u8

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (u8, Uint<LIMBS>)

§

type Identifier = u8

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (u16, DynResidue<LIMBS>)

§

type Identifier = u16

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (u16, Uint<LIMBS>)

§

type Identifier = u16

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (u32, DynResidue<LIMBS>)

§

type Identifier = u32

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (u32, Uint<LIMBS>)

§

type Identifier = u32

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (u64, DynResidue<LIMBS>)

§

type Identifier = u64

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (u64, Uint<LIMBS>)

§

type Identifier = u64

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (u128, DynResidue<LIMBS>)

§

type Identifier = u128

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (u128, Uint<LIMBS>)

§

type Identifier = u128

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (usize, DynResidue<LIMBS>)

§

type Identifier = usize

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

source§

impl<const LIMBS: usize> Share for (usize, Uint<LIMBS>)

§

type Identifier = usize

source§

fn empty_share_with_capacity(_size_hint: usize) -> Self

source§

fn is_zero(&self) -> Choice

source§

fn identifier(&self) -> Self::Identifier

source§

fn identifier_mut(&mut self) -> &mut Self::Identifier

source§

fn value(&self, buffer: &mut [u8]) -> VsssResult<()>

source§

fn value_mut(&mut self, buffer: &[u8]) -> VsssResult<()>

source§

fn value_vec(&self) -> Vec<u8>

Implementors§