pub struct MerkleHash(/* private fields */);Expand description
Source data for creation of multi-message commitments according to LNPBP-4 procedure.
Implementations§
Source§impl MerkleHash
impl MerkleHash
pub fn void(depth: impl Into<u8>, width: impl Into<u256>) -> MerkleHash
pub fn single( depth: impl Into<u8>, width: impl Into<u256>, node: MerkleHash, ) -> MerkleHash
pub fn branches( depth: impl Into<u8>, width: impl Into<u256>, node1: MerkleHash, node2: MerkleHash, ) -> MerkleHash
Source§impl MerkleHash
impl MerkleHash
Sourcepub fn merklize(leaves: &impl MerkleLeaves) -> MerkleHash
pub fn merklize(leaves: &impl MerkleLeaves) -> MerkleHash
Merklization procedure that uses tagged hashes with depth commitments according to LNPBP-81 standard of client-side-validation merklization.
Methods from Deref<Target = Array<u8, 32>>§
Trait Implementations§
Source§impl Borrow<[u8]> for MerkleHash
impl Borrow<[u8]> for MerkleHash
Source§impl Clone for MerkleHash
impl Clone for MerkleHash
Source§fn clone(&self) -> MerkleHash
fn clone(&self) -> MerkleHash
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl CommitmentId for MerkleHash
impl CommitmentId for MerkleHash
Source§impl Debug for MerkleHash
impl Debug for MerkleHash
Source§impl Deref for MerkleHash
impl Deref for MerkleHash
Source§impl<'de> Deserialize<'de> for MerkleHash
impl<'de> Deserialize<'de> for MerkleHash
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<MerkleHash, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<MerkleHash, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for MerkleHash
impl Display for MerkleHash
Source§impl FromHex for MerkleHash
impl FromHex for MerkleHash
Source§fn from_byte_iter<I>(iter: I) -> Result<MerkleHash, Error>
fn from_byte_iter<I>(iter: I) -> Result<MerkleHash, Error>
Produce an object from a byte iterator
Source§impl FromStr for MerkleHash
impl FromStr for MerkleHash
Source§impl Hash for MerkleHash
impl Hash for MerkleHash
Source§impl Index<RangeFull> for MerkleHash
impl Index<RangeFull> for MerkleHash
Source§impl Index<RangeInclusive<usize>> for MerkleHash
impl Index<RangeInclusive<usize>> for MerkleHash
Source§type Output = <Array<u8, 32> as Index<RangeInclusive<usize>>>::Output
type Output = <Array<u8, 32> as Index<RangeInclusive<usize>>>::Output
The returned type after indexing.
Source§fn index(
&self,
index: RangeInclusive<usize>,
) -> &<MerkleHash as Index<RangeInclusive<usize>>>::Output
fn index( &self, index: RangeInclusive<usize>, ) -> &<MerkleHash as Index<RangeInclusive<usize>>>::Output
Performs the indexing (
container[index]) operation. Read moreSource§impl Index<RangeToInclusive<usize>> for MerkleHash
impl Index<RangeToInclusive<usize>> for MerkleHash
Source§type Output = <Array<u8, 32> as Index<RangeInclusive<usize>>>::Output
type Output = <Array<u8, 32> as Index<RangeInclusive<usize>>>::Output
The returned type after indexing.
Source§fn index(
&self,
index: RangeToInclusive<usize>,
) -> &<MerkleHash as Index<RangeToInclusive<usize>>>::Output
fn index( &self, index: RangeToInclusive<usize>, ) -> &<MerkleHash as Index<RangeToInclusive<usize>>>::Output
Performs the indexing (
container[index]) operation. Read moreSource§impl Index<usize> for MerkleHash
impl Index<usize> for MerkleHash
Source§impl LowerHex for MerkleHash
impl LowerHex for MerkleHash
Source§impl Ord for MerkleHash
impl Ord for MerkleHash
Source§fn cmp(&self, other: &MerkleHash) -> Ordering
fn cmp(&self, other: &MerkleHash) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for MerkleHash
impl PartialEq for MerkleHash
Source§impl PartialOrd for MerkleHash
impl PartialOrd for MerkleHash
Source§impl Serialize for MerkleHash
impl Serialize for MerkleHash
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Source§impl StrictDecode for MerkleHash
impl StrictDecode for MerkleHash
fn strict_decode(reader: &mut impl TypedRead) -> Result<MerkleHash, DecodeError>
fn strict_read(reader: impl ReadRaw) -> Result<Self, DecodeError>
Source§impl StrictDumb for MerkleHash
impl StrictDumb for MerkleHash
fn strict_dumb() -> MerkleHash
Source§impl StrictEncode for MerkleHash
impl StrictEncode for MerkleHash
fn strict_encode<W>(&self, writer: W) -> Result<W, Error>where
W: TypedWrite,
fn strict_write(&self, writer: impl WriteRaw) -> Result<(), Error>
Source§impl StrictTuple for MerkleHash
impl StrictTuple for MerkleHash
const FIELD_COUNT: u8 = 1u8
fn strict_check_fields()
fn strict_type_info() -> TypeInfo<Self>
Source§impl StrictType for MerkleHash
impl StrictType for MerkleHash
const STRICT_LIB_NAME: &'static str = LIB_NAME_COMMIT_VERIFY
fn strict_name() -> Option<TypeName>
Source§impl UpperHex for MerkleHash
impl UpperHex for MerkleHash
Source§impl Wrapper for MerkleHash
impl Wrapper for MerkleHash
Source§fn from_inner(inner: <MerkleHash as Wrapper>::Inner) -> MerkleHash
fn from_inner(inner: <MerkleHash as Wrapper>::Inner) -> MerkleHash
Instantiates wrapper type with the inner data
Source§fn as_inner(&self) -> &<MerkleHash as Wrapper>::Inner
fn as_inner(&self) -> &<MerkleHash as Wrapper>::Inner
Returns reference to the inner representation for the wrapper type
Source§fn into_inner(self) -> <MerkleHash as Wrapper>::Inner
fn into_inner(self) -> <MerkleHash as Wrapper>::Inner
Unwraps the wrapper returning the inner type
impl Copy for MerkleHash
impl Eq for MerkleHash
impl StrictProduct for MerkleHash
impl StructuralPartialEq for MerkleHash
Auto Trait Implementations§
impl Freeze for MerkleHash
impl RefUnwindSafe for MerkleHash
impl Send for MerkleHash
impl Sync for MerkleHash
impl Unpin for MerkleHash
impl UnwindSafe for MerkleHash
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<Id, const LEN: usize, const REVERSE_STR: bool> ByteArray<LEN> for Id
impl<Id, const LEN: usize, const REVERSE_STR: bool> ByteArray<LEN> for Id
Source§fn from_byte_array(val: impl Into<[u8; LEN]>) -> Id
fn from_byte_array(val: impl Into<[u8; LEN]>) -> Id
Constructs a wrapper type around a byte array.
Source§fn from_slice(slice: impl AsRef<[u8]>) -> Result<Id, FromSliceError>
fn from_slice(slice: impl AsRef<[u8]>) -> Result<Id, FromSliceError>
Constructs a byte array from the slice. Errors if the slice length
doesn’t match
LEN constant generic.Source§fn from_slice_unsafe(slice: impl AsRef<[u8]>) -> Id
fn from_slice_unsafe(slice: impl AsRef<[u8]>) -> Id
Constructs a byte array from the slice. Expects the slice length
doesn’t match
LEN constant generic. Read moreSource§fn to_byte_array(&self) -> [u8; LEN]
fn to_byte_array(&self) -> [u8; LEN]
Returns a byte array representation stored in the wrapped type.
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
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.