pub enum Leaf {
Inhabited {
protocol: ProtocolId,
message: Message,
},
Entropy {
entropy: u64,
pos: u32,
},
}Expand description
A leaf of the MPC Merkle tree.
Variants§
Inhabited
Leaf, inhabited with a commitment under a protocol.
Fields
§
protocol: ProtocolIdThe protocol under which the message is created.
Entropy
Lead, uninhabited by any protocol.
Implementations§
Source§impl Leaf
impl Leaf
Sourcepub fn entropy(entropy: u64, pos: u32) -> Self
pub fn entropy(entropy: u64, pos: u32) -> Self
Construct a Leaf::Entropy variant.
Sourcepub fn inhabited(protocol: ProtocolId, message: Message) -> Self
pub fn inhabited(protocol: ProtocolId, message: Message) -> Self
Construct a Leaf::Inhabited variant.
Trait Implementations§
Source§impl CommitEncode for Leaf
impl CommitEncode for Leaf
Source§type CommitmentId = MerkleHash
type CommitmentId = MerkleHash
Type of the resulting commitment.
Source§fn commit_encode(&self, engine: &mut CommitEngine)
fn commit_encode(&self, engine: &mut CommitEngine)
Encodes the data for the commitment by writing them directly into a
std::io::Write writer instanceSource§impl StrictDecode for Leaf
impl StrictDecode for Leaf
fn strict_decode(reader: &mut impl TypedRead) -> Result<Self, DecodeError>
fn strict_read(reader: impl ReadRaw) -> Result<Self, DecodeError>
Source§impl StrictDumb for Leaf
impl StrictDumb for Leaf
fn strict_dumb() -> Self
Source§impl StrictEncode for Leaf
impl StrictEncode for Leaf
fn strict_encode<W: TypedWrite>(&self, writer: W) -> Result<W>
fn strict_write(&self, writer: impl WriteRaw) -> Result<(), Error>
Source§impl StrictSum for Leaf
impl StrictSum for Leaf
const ALL_VARIANTS: &'static [(u8, &'static str)]
fn variant_name(&self) -> &'static str
fn strict_check_variants()
fn variant_name_by_tag(tag: u8) -> Option<VariantName>
fn variant_ord(&self) -> u8
Source§impl StrictType for Leaf
impl StrictType for Leaf
const STRICT_LIB_NAME: &'static str = crate::LIB_NAME_COMMIT_VERIFY
fn strict_name() -> Option<TypeName>
Source§impl StrictUnion for Leaf
impl StrictUnion for Leaf
fn strict_type_info() -> TypeInfo<Self>
impl Copy for Leaf
impl Eq for Leaf
impl StructuralPartialEq for Leaf
Auto Trait Implementations§
impl Freeze for Leaf
impl RefUnwindSafe for Leaf
impl Send for Leaf
impl Sync for Leaf
impl Unpin for Leaf
impl UnwindSafe for Leaf
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> CommitId for Twhere
T: CommitEncode,
impl<T> CommitId for Twhere
T: CommitEncode,
fn commit(&self) -> CommitEngine
Source§fn commit_id(&self) -> <T as CommitEncode>::CommitmentId
fn commit_id(&self) -> <T as CommitEncode>::CommitmentId
Performs commitment to client-side-validated data
Source§impl<T> CommitmentLayout for T
impl<T> CommitmentLayout for T
Source§fn commitment_layout() -> CommitLayout
fn commitment_layout() -> CommitLayout
Generate a descriptive commitment layout, which includes a description
of each encoded field and the used hashing strategies.
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.