Struct nostr_sdk::bitcoin::hash_types::WitnessMerkleNode
pub struct WitnessMerkleNode(/* private fields */);
Expand description
A hash corresponding to the Merkle tree root for witness data
Implementations§
§impl WitnessMerkleNode
impl WitnessMerkleNode
pub fn from_raw_hash(inner: Hash) -> WitnessMerkleNode
pub fn from_raw_hash(inner: Hash) -> WitnessMerkleNode
Creates this wrapper type from the inner hash type.
pub fn to_raw_hash(self) -> Hash
pub fn to_raw_hash(self) -> Hash
Returns the inner hash (sha256, sh256d etc.).
pub fn as_raw_hash(&self) -> &Hash
pub fn as_raw_hash(&self) -> &Hash
Returns a reference to the inner hash (sha256, sh256d etc.).
Trait Implementations§
§impl AsRef<[u8]> for WitnessMerkleNode
impl AsRef<[u8]> for WitnessMerkleNode
§impl AsRef<[u8; 32]> for WitnessMerkleNode
impl AsRef<[u8; 32]> for WitnessMerkleNode
§impl Borrow<[u8]> for WitnessMerkleNode
impl Borrow<[u8]> for WitnessMerkleNode
§impl Clone for WitnessMerkleNode
impl Clone for WitnessMerkleNode
§fn clone(&self) -> WitnessMerkleNode
fn clone(&self) -> WitnessMerkleNode
Returns a copy 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 more§impl Debug for WitnessMerkleNode
impl Debug for WitnessMerkleNode
§impl Decodable for WitnessMerkleNode
impl Decodable for WitnessMerkleNode
§fn consensus_decode<R>(r: &mut R) -> Result<WitnessMerkleNode, Error>where
R: Read + ?Sized,
fn consensus_decode<R>(r: &mut R) -> Result<WitnessMerkleNode, Error>where R: Read + ?Sized,
Decode an object with a well-defined format. Read more
§impl<'de> Deserialize<'de> for WitnessMerkleNode
impl<'de> Deserialize<'de> for WitnessMerkleNode
§fn deserialize<D>(
d: D
) -> Result<WitnessMerkleNode, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>( d: D ) -> Result<WitnessMerkleNode, <D as Deserializer<'de>>::Error>where D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl Display for WitnessMerkleNode
impl Display for WitnessMerkleNode
§impl Encodable for WitnessMerkleNode
impl Encodable for WitnessMerkleNode
§impl From<Hash> for WitnessMerkleNode
impl From<Hash> for WitnessMerkleNode
§fn from(inner: Hash) -> WitnessMerkleNode
fn from(inner: Hash) -> WitnessMerkleNode
Converts to this type from the input type.
§impl From<WitnessMerkleNode> for Hash
impl From<WitnessMerkleNode> for Hash
§fn from(hashtype: WitnessMerkleNode) -> Hash
fn from(hashtype: WitnessMerkleNode) -> Hash
Converts to this type from the input type.
§impl FromStr for WitnessMerkleNode
impl FromStr for WitnessMerkleNode
§impl Hash for WitnessMerkleNode
impl Hash for WitnessMerkleNode
§type Engine = <Hash as Hash>::Engine
type Engine = <Hash as Hash>::Engine
A hashing engine which bytes can be serialized into. It is expected
to implement the
io::Write
trait, and to never return errors under
any conditions.§const DISPLAY_BACKWARD: bool = true
const DISPLAY_BACKWARD: bool = true
Flag indicating whether user-visible serializations of this hash
should be backward. For some reason Satoshi decided this should be
true for
Sha256dHash
, so here we are.§fn engine() -> <WitnessMerkleNode as Hash>::Engine
fn engine() -> <WitnessMerkleNode as Hash>::Engine
Constructs a new engine.
§fn from_engine(e: <WitnessMerkleNode as Hash>::Engine) -> WitnessMerkleNode
fn from_engine(e: <WitnessMerkleNode as Hash>::Engine) -> WitnessMerkleNode
Produces a hash from the current state of a given engine.
§fn from_slice(sl: &[u8]) -> Result<WitnessMerkleNode, Error>
fn from_slice(sl: &[u8]) -> Result<WitnessMerkleNode, Error>
Copies a byte slice into a hash object.
§fn from_byte_array(
bytes: <WitnessMerkleNode as Hash>::Bytes
) -> WitnessMerkleNode
fn from_byte_array( bytes: <WitnessMerkleNode as Hash>::Bytes ) -> WitnessMerkleNode
Constructs a hash from the underlying byte array.
§fn to_byte_array(self) -> <WitnessMerkleNode as Hash>::Bytes
fn to_byte_array(self) -> <WitnessMerkleNode as Hash>::Bytes
Returns the underlying byte array.
§fn as_byte_array(&self) -> &<WitnessMerkleNode as Hash>::Bytes
fn as_byte_array(&self) -> &<WitnessMerkleNode as Hash>::Bytes
Returns a reference to the underlying byte array.
§fn all_zeros() -> WitnessMerkleNode
fn all_zeros() -> WitnessMerkleNode
Returns an all zero hash. Read more
§impl Hash for WitnessMerkleNode
impl Hash for WitnessMerkleNode
§impl<I> Index<I> for WitnessMerkleNodewhere
I: SliceIndex<[u8]>,
impl<I> Index<I> for WitnessMerkleNodewhere I: SliceIndex<[u8]>,
§impl LowerHex for WitnessMerkleNode
impl LowerHex for WitnessMerkleNode
§impl Ord for WitnessMerkleNode
impl Ord for WitnessMerkleNode
§fn cmp(&self, other: &WitnessMerkleNode) -> Ordering
fn cmp(&self, other: &WitnessMerkleNode) -> 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
§impl PartialEq<WitnessMerkleNode> for WitnessMerkleNode
impl PartialEq<WitnessMerkleNode> for WitnessMerkleNode
§fn eq(&self, other: &WitnessMerkleNode) -> bool
fn eq(&self, other: &WitnessMerkleNode) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.§impl PartialOrd<WitnessMerkleNode> for WitnessMerkleNode
impl PartialOrd<WitnessMerkleNode> for WitnessMerkleNode
§fn partial_cmp(&self, other: &WitnessMerkleNode) -> Option<Ordering>
fn partial_cmp(&self, other: &WitnessMerkleNode) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read more§impl SerdeHash for WitnessMerkleNode
impl SerdeHash for WitnessMerkleNode
§fn from_slice_delegated(sl: &[u8]) -> Result<WitnessMerkleNode, Error>
fn from_slice_delegated(sl: &[u8]) -> Result<WitnessMerkleNode, Error>
Helper function to turn a deserialized slice into the correct hash type.
§fn serialize<S>(
&self,
s: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>( &self, s: S ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where S: Serializer,
Do serde serialization.
§fn deserialize<'de, D>(d: D) -> Result<Self, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<'de, D>(d: D) -> Result<Self, <D as Deserializer<'de>>::Error>where D: Deserializer<'de>,
Do serde deserialization.
§impl Serialize for WitnessMerkleNode
impl Serialize for WitnessMerkleNode
§fn serialize<S>(
&self,
s: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>( &self, s: S ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where S: Serializer,
Serialize this value into the given Serde serializer. Read more
§impl UpperHex for WitnessMerkleNode
impl UpperHex for WitnessMerkleNode
impl Copy for WitnessMerkleNode
impl Eq for WitnessMerkleNode
impl StructuralEq for WitnessMerkleNode
impl StructuralPartialEq for WitnessMerkleNode
Auto Trait Implementations§
impl RefUnwindSafe for WitnessMerkleNode
impl Send for WitnessMerkleNode
impl Sync for WitnessMerkleNode
impl Unpin for WitnessMerkleNode
impl UnwindSafe for WitnessMerkleNode
Blanket Implementations§
§impl<T> Base32Len for Twhere
T: AsRef<[u8]>,
impl<T> Base32Len for Twhere T: AsRef<[u8]>,
§fn base32_len(&self) -> usize
fn base32_len(&self) -> usize
Calculate the base32 serialized length
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<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
§impl<T> ToBase32 for Twhere
T: AsRef<[u8]>,
impl<T> ToBase32 for Twhere T: AsRef<[u8]>,
§fn write_base32<W>(&self, writer: &mut W) -> Result<(), <W as WriteBase32>::Err>where
W: WriteBase32,
fn write_base32<W>(&self, writer: &mut W) -> Result<(), <W as WriteBase32>::Err>where W: WriteBase32,
Encode as base32 and write it to the supplied writer
Implementations shouldn’t allocate.