What changed, and why it matters
This commit only updates automatically-generated API snapshot files to reflect a new MuHash type that was added in a previous code change. No actual source code is modified, and there is no security fix or vulnerability here.
No action required. This is a non-functional API-snapshot maintenance commit.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The diff updates three api/hashes/*.txt files, which are public-API snapshots used by the project’s API-check tooling. The additions merely list the public symbols (structs, impls, traits, constants, functions, modules, types) introduced by the new bitcoin_hashes::muhash module and MuHash/muhash::Hash types. These are documentation/snapshot files, not executable code. The commit message explicitly states this is a separate patch to keep extensive API-file changes distinct from the actual MuHash code change.
Changed components
api/hashes/all-features.txtapi/hashes/alloc-only.txtapi/hashes/no-features.txtInspect captured patch +142 / −0
diff --git a/api/hashes/all-features.txt b/api/hashes/all-features.txt
index b231619b..5e7308a7 100644
--- a/api/hashes/all-features.txt
+++ b/api/hashes/all-features.txt
@@ -1,5 +1,6 @@
#[repr(transparent)] pub struct bitcoin_hashes::Hash160(_)
#[repr(transparent)] pub struct bitcoin_hashes::Hmac<T: bitcoin_hashes::Hash>(_)
+#[repr(transparent)] pub struct bitcoin_hashes::MuHash(_)
#[repr(transparent)] pub struct bitcoin_hashes::Ripemd160(_)
#[repr(transparent)] pub struct bitcoin_hashes::Sha1(_)
#[repr(transparent)] pub struct bitcoin_hashes::Sha256(_)
@@ -11,6 +12,7 @@
#[repr(transparent)] pub struct bitcoin_hashes::Siphash24(_)
#[repr(transparent)] pub struct bitcoin_hashes::hash160::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::hmac::Hmac<T: bitcoin_hashes::Hash>(_)
+#[repr(transparent)] pub struct bitcoin_hashes::muhash::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::ripemd160::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::sha1::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::sha256::Hash(_)
@@ -22,6 +24,7 @@
#[repr(transparent)] pub struct bitcoin_hashes::sha512_256::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::siphash24::Hash(_)
impl bitcoin_hashes::Hash for bitcoin_hashes::hash160::Hash
+impl bitcoin_hashes::Hash for bitcoin_hashes::muhash::Hash
impl bitcoin_hashes::Hash for bitcoin_hashes::ripemd160::Hash
impl bitcoin_hashes::Hash for bitcoin_hashes::sha1::Hash
impl bitcoin_hashes::Hash for bitcoin_hashes::sha256::Hash
@@ -43,6 +46,7 @@ impl bitcoin_hashes::HashEngine for bitcoin_hashes::sha512_256::HashEngine
impl bitcoin_hashes::HashEngine for bitcoin_hashes::siphash24::HashEngine
impl bitcoin_hashes::hash160::Hash
impl bitcoin_hashes::hash160::HashEngine
+impl bitcoin_hashes::muhash::Hash
impl bitcoin_hashes::ripemd160::Hash
impl bitcoin_hashes::ripemd160::HashEngine
impl bitcoin_hashes::sha1::Hash
@@ -69,10 +73,12 @@ impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha256::Hash
impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha256d::Hash
impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha3_256::Hash
impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha512_256::Hash
+impl core::borrow::Borrow<[u8; 384]> for bitcoin_hashes::muhash::Hash
impl core::borrow::Borrow<[u8; 48]> for bitcoin_hashes::sha384::Hash
impl core::borrow::Borrow<[u8; 64]> for bitcoin_hashes::sha512::Hash
impl core::borrow::Borrow<[u8; 8]> for bitcoin_hashes::siphash24::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::hash160::Hash
+impl core::borrow::Borrow<[u8]> for bitcoin_hashes::muhash::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::ripemd160::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::sha1::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::sha256::Hash
@@ -85,6 +91,7 @@ impl core::borrow::Borrow<[u8]> for bitcoin_hashes::siphash24::Hash
impl core::clone::Clone for bitcoin_hashes::hash160::Hash
impl core::clone::Clone for bitcoin_hashes::hash160::HashEngine
impl core::clone::Clone for bitcoin_hashes::hkdf::MaxLengthError
+impl core::clone::Clone for bitcoin_hashes::muhash::Hash
impl core::clone::Clone for bitcoin_hashes::ripemd160::Hash
impl core::clone::Clone for bitcoin_hashes::ripemd160::HashEngine
impl core::clone::Clone for bitcoin_hashes::sha1::Hash
@@ -108,6 +115,7 @@ impl core::clone::Clone for bitcoin_hashes::siphash24::HashEngine
impl core::clone::Clone for bitcoin_hashes::siphash24::State
impl core::cmp::Eq for bitcoin_hashes::hash160::Hash
impl core::cmp::Eq for bitcoin_hashes::hkdf::MaxLengthError
+impl core::cmp::Eq for bitcoin_hashes::muhash::Hash
impl core::cmp::Eq for bitcoin_hashes::ripemd160::Hash
impl core::cmp::Eq for bitcoin_hashes::sha1::Hash
impl core::cmp::Eq for bitcoin_hashes::sha256::Hash
@@ -120,6 +128,7 @@ impl core::cmp::Eq for bitcoin_hashes::sha512::Hash
impl core::cmp::Eq for bitcoin_hashes::sha512_256::Hash
impl core::cmp::Eq for bitcoin_hashes::siphash24::Hash
impl core::cmp::Ord for bitcoin_hashes::hash160::Hash
+impl core::cmp::Ord for bitcoin_hashes::muhash::Hash
impl core::cmp::Ord for bitcoin_hashes::ripemd160::Hash
impl core::cmp::Ord for bitcoin_hashes::sha1::Hash
impl core::cmp::Ord for bitcoin_hashes::sha256::Hash
@@ -132,6 +141,7 @@ impl core::cmp::Ord for bitcoin_hashes::sha512_256::Hash
impl core::cmp::Ord for bitcoin_hashes::siphash24::Hash
impl core::cmp::PartialEq for bitcoin_hashes::hash160::Hash
impl core::cmp::PartialEq for bitcoin_hashes::hkdf::MaxLengthError
+impl core::cmp::PartialEq for bitcoin_hashes::muhash::Hash
impl core::cmp::PartialEq for bitcoin_hashes::ripemd160::Hash
impl core::cmp::PartialEq for bitcoin_hashes::sha1::Hash
impl core::cmp::PartialEq for bitcoin_hashes::sha256::Hash
@@ -144,6 +154,7 @@ impl core::cmp::PartialEq for bitcoin_hashes::sha512::Hash
impl core::cmp::PartialEq for bitcoin_hashes::sha512_256::Hash
impl core::cmp::PartialEq for bitcoin_hashes::siphash24::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::hash160::Hash
+impl core::cmp::PartialOrd for bitcoin_hashes::muhash::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::ripemd160::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::sha1::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::sha256::Hash
@@ -161,10 +172,12 @@ impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha256::Hash
impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha256d::Hash
impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha3_256::Hash
impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha512_256::Hash
+impl core::convert::AsRef<[u8; 384]> for bitcoin_hashes::muhash::Hash
impl core::convert::AsRef<[u8; 48]> for bitcoin_hashes::sha384::Hash
impl core::convert::AsRef<[u8; 64]> for bitcoin_hashes::sha512::Hash
impl core::convert::AsRef<[u8; 8]> for bitcoin_hashes::siphash24::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::hash160::Hash
+impl core::convert::AsRef<[u8]> for bitcoin_hashes::muhash::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::ripemd160::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::sha1::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::sha256::Hash
@@ -190,6 +203,7 @@ impl core::error::Error for bitcoin_hashes::sha256::MidstateError
impl core::fmt::Debug for bitcoin_hashes::hash160::Hash
impl core::fmt::Debug for bitcoin_hashes::hash160::HashEngine
impl core::fmt::Debug for bitcoin_hashes::hkdf::MaxLengthError
+impl core::fmt::Debug for bitcoin_hashes::muhash::Hash
impl core::fmt::Debug for bitcoin_hashes::ripemd160::Hash
impl core::fmt::Debug for bitcoin_hashes::ripemd160::HashEngine
impl core::fmt::Debug for bitcoin_hashes::sha1::Hash
@@ -213,6 +227,7 @@ impl core::fmt::Debug for bitcoin_hashes::siphash24::HashEngine
impl core::fmt::Debug for bitcoin_hashes::siphash24::State
impl core::fmt::Display for bitcoin_hashes::hash160::Hash
impl core::fmt::Display for bitcoin_hashes::hkdf::MaxLengthError
+impl core::fmt::Display for bitcoin_hashes::muhash::Hash
impl core::fmt::Display for bitcoin_hashes::ripemd160::Hash
impl core::fmt::Display for bitcoin_hashes::sha1::Hash
impl core::fmt::Display for bitcoin_hashes::sha256::Hash
@@ -224,6 +239,7 @@ impl core::fmt::Display for bitcoin_hashes::sha512::Hash
impl core::fmt::Display for bitcoin_hashes::sha512_256::Hash
impl core::fmt::Display for bitcoin_hashes::siphash24::Hash
impl core::fmt::LowerHex for bitcoin_hashes::hash160::Hash
+impl core::fmt::LowerHex for bitcoin_hashes::muhash::Hash
impl core::fmt::LowerHex for bitcoin_hashes::ripemd160::Hash
impl core::fmt::LowerHex for bitcoin_hashes::sha1::Hash
impl core::fmt::LowerHex for bitcoin_hashes::sha256::Hash
@@ -234,6 +250,7 @@ impl core::fmt::LowerHex for bitcoin_hashes::sha512::Hash
impl core::fmt::LowerHex for bitcoin_hashes::sha512_256::Hash
impl core::fmt::LowerHex for bitcoin_hashes::siphash24::Hash
impl core::fmt::UpperHex for bitcoin_hashes::hash160::Hash
+impl core::fmt::UpperHex for bitcoin_hashes::muhash::Hash
impl core::fmt::UpperHex for bitcoin_hashes::ripemd160::Hash
impl core::fmt::UpperHex for bitcoin_hashes::sha1::Hash
impl core::fmt::UpperHex for bitcoin_hashes::sha256::Hash
@@ -244,6 +261,7 @@ impl core::fmt::UpperHex for bitcoin_hashes::sha512::Hash
impl core::fmt::UpperHex for bitcoin_hashes::sha512_256::Hash
impl core::fmt::UpperHex for bitcoin_hashes::siphash24::Hash
impl core::hash::Hash for bitcoin_hashes::hash160::Hash
+impl core::hash::Hash for bitcoin_hashes::muhash::Hash
impl core::hash::Hash for bitcoin_hashes::ripemd160::Hash
impl core::hash::Hash for bitcoin_hashes::sha1::Hash
impl core::hash::Hash for bitcoin_hashes::sha256::Hash
@@ -256,6 +274,7 @@ impl core::hash::Hash for bitcoin_hashes::sha512_256::Hash
impl core::hash::Hash for bitcoin_hashes::siphash24::Hash
impl core::marker::Copy for bitcoin_hashes::hash160::Hash
impl core::marker::Copy for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Copy for bitcoin_hashes::muhash::Hash
impl core::marker::Copy for bitcoin_hashes::ripemd160::Hash
impl core::marker::Copy for bitcoin_hashes::sha1::Hash
impl core::marker::Copy for bitcoin_hashes::sha256::Hash
@@ -269,6 +288,7 @@ impl core::marker::Copy for bitcoin_hashes::siphash24::Hash
impl core::marker::Freeze for bitcoin_hashes::hash160::Hash
impl core::marker::Freeze for bitcoin_hashes::hash160::HashEngine
impl core::marker::Freeze for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Freeze for bitcoin_hashes::muhash::Hash
impl core::marker::Freeze for bitcoin_hashes::ripemd160::Hash
impl core::marker::Freeze for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Freeze for bitcoin_hashes::sha1::Hash
@@ -293,6 +313,7 @@ impl core::marker::Freeze for bitcoin_hashes::siphash24::State
impl core::marker::Send for bitcoin_hashes::hash160::Hash
impl core::marker::Send for bitcoin_hashes::hash160::HashEngine
impl core::marker::Send for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Send for bitcoin_hashes::muhash::Hash
impl core::marker::Send for bitcoin_hashes::ripemd160::Hash
impl core::marker::Send for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Send for bitcoin_hashes::sha1::Hash
@@ -316,6 +337,7 @@ impl core::marker::Send for bitcoin_hashes::siphash24::HashEngine
impl core::marker::Send for bitcoin_hashes::siphash24::State
impl core::marker::StructuralPartialEq for bitcoin_hashes::hash160::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::StructuralPartialEq for bitcoin_hashes::muhash::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::ripemd160::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::sha1::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::sha256::Hash
@@ -330,6 +352,7 @@ impl core::marker::StructuralPartialEq for bitcoin_hashes::siphash24::Hash
impl core::marker::Sync for bitcoin_hashes::hash160::Hash
impl core::marker::Sync for bitcoin_hashes::hash160::HashEngine
impl core::marker::Sync for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Sync for bitcoin_hashes::muhash::Hash
impl core::marker::Sync for bitcoin_hashes::ripemd160::Hash
impl core::marker::Sync for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Sync for bitcoin_hashes::sha1::Hash
@@ -354,6 +377,7 @@ impl core::marker::Sync for bitcoin_hashes::siphash24::State
impl core::marker::Unpin for bitcoin_hashes::hash160::Hash
impl core::marker::Unpin for bitcoin_hashes::hash160::HashEngine
impl core::marker::Unpin for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Unpin for bitcoin_hashes::muhash::Hash
impl core::marker::Unpin for bitcoin_hashes::ripemd160::Hash
impl core::marker::Unpin for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Unpin for bitcoin_hashes::sha1::Hash
@@ -378,6 +402,7 @@ impl core::marker::Unpin for bitcoin_hashes::siphash24::State
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::hash160::Hash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::hash160::HashEngine
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::hkdf::MaxLengthError
+impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::muhash::Hash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::ripemd160::Hash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::ripemd160::HashEngine
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::sha1::Hash
@@ -402,6 +427,7 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::siphash24::Stat
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::hash160::Hash
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::hash160::HashEngine
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::hkdf::MaxLengthError
+impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::muhash::Hash
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::ripemd160::Hash
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::ripemd160::HashEngine
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::sha1::Hash
@@ -424,6 +450,7 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::siphash24::Hash
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::siphash24::HashEngine
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::siphash24::State
impl core::str::traits::FromStr for bitcoin_hashes::hash160::Hash
+impl core::str::traits::FromStr for bitcoin_hashes::muhash::Hash
impl core::str::traits::FromStr for bitcoin_hashes::ripemd160::Hash
impl core::str::traits::FromStr for bitcoin_hashes::sha1::Hash
impl core::str::traits::FromStr for bitcoin_hashes::sha256::Hash
@@ -434,6 +461,7 @@ impl core::str::traits::FromStr for bitcoin_hashes::sha512::Hash
impl core::str::traits::FromStr for bitcoin_hashes::sha512_256::Hash
impl core::str::traits::FromStr for bitcoin_hashes::siphash24::Hash
impl serde::ser::Serialize for bitcoin_hashes::hash160::Hash
+impl serde::ser::Serialize for bitcoin_hashes::muhash::Hash
impl serde::ser::Serialize for bitcoin_hashes::ripemd160::Hash
impl serde::ser::Serialize for bitcoin_hashes::sha1::Hash
impl serde::ser::Serialize for bitcoin_hashes::sha256::Hash
@@ -456,6 +484,7 @@ impl std::io::Write for bitcoin_hashes::siphash24::HashEngine
impl<'de, T: bitcoin_hashes::Hash + serde::de::Deserialize<'de>> serde::de::Deserialize<'de> for bitcoin_hashes::hmac::Hmac<T>
impl<'de, T: bitcoin_hashes::sha256t::Tag> serde::de::Deserialize<'de> for bitcoin_hashes::sha256t::Hash<T>
impl<'de> serde::de::Deserialize<'de> for bitcoin_hashes::hash160::Hash
+impl<'de> serde::de::Deserialize<'de> for bitcoin_hashes::muhash::Hash
impl<'de> serde::de::Deserialize<'de> for bitcoin_hashes::ripemd160::Hash
impl<'de> serde::de::Deserialize<'de> for bitcoin_hashes::sha1::Hash
impl<'de> serde::de::Deserialize<'de> for bitcoin_hashes::sha256::Hash
@@ -569,6 +598,7 @@ pub const bitcoin_hashes::IsByteArray::LEN: usize
pub const bitcoin_hashes::hash160::Hash::DISPLAY_BACKWARD: bool
pub const bitcoin_hashes::hash160::HashEngine::BLOCK_SIZE: usize
pub const bitcoin_hashes::hmac::HmacEngine<T>::BLOCK_SIZE: usize
+pub const bitcoin_hashes::muhash::Hash::DISPLAY_BACKWARD: bool
pub const bitcoin_hashes::ripemd160::Hash::DISPLAY_BACKWARD: bool
pub const bitcoin_hashes::ripemd160::HashEngine::BLOCK_SIZE: usize
pub const bitcoin_hashes::sha1::Hash::DISPLAY_BACKWARD: bool
@@ -595,6 +625,10 @@ pub const fn bitcoin_hashes::hash160::Hash::from_byte_array(bytes: [u8; 20]) ->
pub const fn bitcoin_hashes::hash160::Hash::from_bytes_ref(bytes: &[u8; 20]) -> &Self
pub const fn bitcoin_hashes::hash160::Hash::to_byte_array(self) -> [u8; 20]
pub const fn bitcoin_hashes::hash160::HashEngine::new() -> Self
+pub const fn bitcoin_hashes::muhash::Hash::as_byte_array(&self) -> &[u8; 384]
+pub const fn bitcoin_hashes::muhash::Hash::from_byte_array(bytes: [u8; 384]) -> Self
+pub const fn bitcoin_hashes::muhash::Hash::from_bytes_ref(bytes: &[u8; 384]) -> &Self
+pub const fn bitcoin_hashes::muhash::Hash::to_byte_array(self) -> [u8; 384]
pub const fn bitcoin_hashes::ripemd160::Hash::as_byte_array(&self) -> &[u8; 20]
pub const fn bitcoin_hashes::ripemd160::Hash::from_byte_array(bytes: [u8; 20]) -> Self
pub const fn bitcoin_hashes::ripemd160::Hash::from_bytes_ref(bytes: &[u8; 20]) -> &Self
@@ -729,6 +763,23 @@ pub fn bitcoin_hashes::macros::serde_details::HexVisitor<ValueT>::default() -> S
pub fn bitcoin_hashes::macros::serde_details::HexVisitor<ValueT>::expecting(&self, formatter: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin_hashes::macros::serde_details::HexVisitor<ValueT>::visit_bytes<E>(self, v: &[u8]) -> core::result::Result<Self::Value, E> where E: serde::de::Error
pub fn bitcoin_hashes::macros::serde_details::HexVisitor<ValueT>::visit_str<E>(self, v: &str) -> core::result::Result<Self::Value, E> where E: serde::de::Error
+pub fn bitcoin_hashes::muhash::Hash::as_byte_array(&self) -> &Self::Bytes
+pub fn bitcoin_hashes::muhash::Hash::as_ref(&self) -> &[u8; 384]
+pub fn bitcoin_hashes::muhash::Hash::as_ref(&self) -> &[u8]
+pub fn bitcoin_hashes::muhash::Hash::borrow(&self) -> &[u8; 384]
+pub fn bitcoin_hashes::muhash::Hash::borrow(&self) -> &[u8]
+pub fn bitcoin_hashes::muhash::Hash::clone(&self) -> bitcoin_hashes::muhash::Hash
+pub fn bitcoin_hashes::muhash::Hash::cmp(&self, other: &bitcoin_hashes::muhash::Hash) -> core::cmp::Ordering
+pub fn bitcoin_hashes::muhash::Hash::deserialize<D: serde::de::Deserializer<'de>>(d: D) -> core::result::Result<bitcoin_hashes::muhash::Hash, <D as serde::de::Deserializer>::Error>
+pub fn bitcoin_hashes::muhash::Hash::eq(&self, other: &bitcoin_hashes::muhash::Hash) -> bool
+pub fn bitcoin_hashes::muhash::Hash::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
+pub fn bitcoin_hashes::muhash::Hash::from_byte_array(bytes: Self::Bytes) -> Self
+pub fn bitcoin_hashes::muhash::Hash::from_bytes_mut(bytes: &mut [u8; 384]) -> &mut Self
+pub fn bitcoin_hashes::muhash::Hash::from_str(s: &str) -> core::result::Result<Self, Self::Err>
+pub fn bitcoin_hashes::muhash::Hash::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
+pub fn bitcoin_hashes::muhash::Hash::partial_cmp(&self, other: &bitcoin_hashes::muhash::Hash) -> core::option::Option<core::cmp::Ordering>
+pub fn bitcoin_hashes::muhash::Hash::serialize<S: serde::ser::Serializer>(&self, s: S) -> core::result::Result<<S as serde::ser::Serializer>::Ok, <S as serde::ser::Serializer>::Error>
+pub fn bitcoin_hashes::muhash::Hash::to_byte_array(self) -> Self::Bytes
pub fn bitcoin_hashes::ripemd160::Hash::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin_hashes::ripemd160::Hash::as_ref(&self) -> &[u8; 20]
pub fn bitcoin_hashes::ripemd160::Hash::as_ref(&self) -> &[u8]
@@ -1067,6 +1118,7 @@ pub mod bitcoin_hashes::hkdf
pub mod bitcoin_hashes::hmac
pub mod bitcoin_hashes::macros
pub mod bitcoin_hashes::macros::serde_details
+pub mod bitcoin_hashes::muhash
pub mod bitcoin_hashes::ripemd160
pub mod bitcoin_hashes::sha1
pub mod bitcoin_hashes::sha256
@@ -1120,6 +1172,8 @@ pub type bitcoin_hashes::hmac::HmacEngine<T>::Bytes = <T as bitcoin_hashes::Hash
pub type bitcoin_hashes::hmac::HmacEngine<T>::Hash = bitcoin_hashes::hmac::Hmac<<T as bitcoin_hashes::HashEngine>::Hash>
pub type bitcoin_hashes::macros::serde_details::BytesVisitor<ValueT, N>::Value = ValueT
pub type bitcoin_hashes::macros::serde_details::HexVisitor<ValueT>::Value = ValueT
+pub type bitcoin_hashes::muhash::Hash::Bytes = [u8; 384]
+pub type bitcoin_hashes::muhash::Hash::Err = hex_conservative::error::HexToArrayError
pub type bitcoin_hashes::ripemd160::Hash::Bytes = [u8; 20]
pub type bitcoin_hashes::ripemd160::Hash::Err = hex_conservative::error::HexToArrayError
pub type bitcoin_hashes::ripemd160::HashEngine::Bytes = [u8; 20]
diff --git a/api/hashes/alloc-only.txt b/api/hashes/alloc-only.txt
index b187154a..5ad5e567 100644
--- a/api/hashes/alloc-only.txt
+++ b/api/hashes/alloc-only.txt
@@ -1,5 +1,6 @@
#[repr(transparent)] pub struct bitcoin_hashes::Hash160(_)
#[repr(transparent)] pub struct bitcoin_hashes::Hmac<T: bitcoin_hashes::Hash>(_)
+#[repr(transparent)] pub struct bitcoin_hashes::MuHash(_)
#[repr(transparent)] pub struct bitcoin_hashes::Ripemd160(_)
#[repr(transparent)] pub struct bitcoin_hashes::Sha1(_)
#[repr(transparent)] pub struct bitcoin_hashes::Sha256(_)
@@ -11,6 +12,7 @@
#[repr(transparent)] pub struct bitcoin_hashes::Siphash24(_)
#[repr(transparent)] pub struct bitcoin_hashes::hash160::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::hmac::Hmac<T: bitcoin_hashes::Hash>(_)
+#[repr(transparent)] pub struct bitcoin_hashes::muhash::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::ripemd160::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::sha1::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::sha256::Hash(_)
@@ -22,6 +24,7 @@
#[repr(transparent)] pub struct bitcoin_hashes::sha512_256::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::siphash24::Hash(_)
impl bitcoin_hashes::Hash for bitcoin_hashes::hash160::Hash
+impl bitcoin_hashes::Hash for bitcoin_hashes::muhash::Hash
impl bitcoin_hashes::Hash for bitcoin_hashes::ripemd160::Hash
impl bitcoin_hashes::Hash for bitcoin_hashes::sha1::Hash
impl bitcoin_hashes::Hash for bitcoin_hashes::sha256::Hash
@@ -43,6 +46,7 @@ impl bitcoin_hashes::HashEngine for bitcoin_hashes::sha512_256::HashEngine
impl bitcoin_hashes::HashEngine for bitcoin_hashes::siphash24::HashEngine
impl bitcoin_hashes::hash160::Hash
impl bitcoin_hashes::hash160::HashEngine
+impl bitcoin_hashes::muhash::Hash
impl bitcoin_hashes::ripemd160::Hash
impl bitcoin_hashes::ripemd160::HashEngine
impl bitcoin_hashes::sha1::Hash
@@ -69,10 +73,12 @@ impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha256::Hash
impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha256d::Hash
impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha3_256::Hash
impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha512_256::Hash
+impl core::borrow::Borrow<[u8; 384]> for bitcoin_hashes::muhash::Hash
impl core::borrow::Borrow<[u8; 48]> for bitcoin_hashes::sha384::Hash
impl core::borrow::Borrow<[u8; 64]> for bitcoin_hashes::sha512::Hash
impl core::borrow::Borrow<[u8; 8]> for bitcoin_hashes::siphash24::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::hash160::Hash
+impl core::borrow::Borrow<[u8]> for bitcoin_hashes::muhash::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::ripemd160::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::sha1::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::sha256::Hash
@@ -85,6 +91,7 @@ impl core::borrow::Borrow<[u8]> for bitcoin_hashes::siphash24::Hash
impl core::clone::Clone for bitcoin_hashes::hash160::Hash
impl core::clone::Clone for bitcoin_hashes::hash160::HashEngine
impl core::clone::Clone for bitcoin_hashes::hkdf::MaxLengthError
+impl core::clone::Clone for bitcoin_hashes::muhash::Hash
impl core::clone::Clone for bitcoin_hashes::ripemd160::Hash
impl core::clone::Clone for bitcoin_hashes::ripemd160::HashEngine
impl core::clone::Clone for bitcoin_hashes::sha1::Hash
@@ -108,6 +115,7 @@ impl core::clone::Clone for bitcoin_hashes::siphash24::HashEngine
impl core::clone::Clone for bitcoin_hashes::siphash24::State
impl core::cmp::Eq for bitcoin_hashes::hash160::Hash
impl core::cmp::Eq for bitcoin_hashes::hkdf::MaxLengthError
+impl core::cmp::Eq for bitcoin_hashes::muhash::Hash
impl core::cmp::Eq for bitcoin_hashes::ripemd160::Hash
impl core::cmp::Eq for bitcoin_hashes::sha1::Hash
impl core::cmp::Eq for bitcoin_hashes::sha256::Hash
@@ -120,6 +128,7 @@ impl core::cmp::Eq for bitcoin_hashes::sha512::Hash
impl core::cmp::Eq for bitcoin_hashes::sha512_256::Hash
impl core::cmp::Eq for bitcoin_hashes::siphash24::Hash
impl core::cmp::Ord for bitcoin_hashes::hash160::Hash
+impl core::cmp::Ord for bitcoin_hashes::muhash::Hash
impl core::cmp::Ord for bitcoin_hashes::ripemd160::Hash
impl core::cmp::Ord for bitcoin_hashes::sha1::Hash
impl core::cmp::Ord for bitcoin_hashes::sha256::Hash
@@ -132,6 +141,7 @@ impl core::cmp::Ord for bitcoin_hashes::sha512_256::Hash
impl core::cmp::Ord for bitcoin_hashes::siphash24::Hash
impl core::cmp::PartialEq for bitcoin_hashes::hash160::Hash
impl core::cmp::PartialEq for bitcoin_hashes::hkdf::MaxLengthError
+impl core::cmp::PartialEq for bitcoin_hashes::muhash::Hash
impl core::cmp::PartialEq for bitcoin_hashes::ripemd160::Hash
impl core::cmp::PartialEq for bitcoin_hashes::sha1::Hash
impl core::cmp::PartialEq for bitcoin_hashes::sha256::Hash
@@ -144,6 +154,7 @@ impl core::cmp::PartialEq for bitcoin_hashes::sha512::Hash
impl core::cmp::PartialEq for bitcoin_hashes::sha512_256::Hash
impl core::cmp::PartialEq for bitcoin_hashes::siphash24::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::hash160::Hash
+impl core::cmp::PartialOrd for bitcoin_hashes::muhash::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::ripemd160::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::sha1::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::sha256::Hash
@@ -161,10 +172,12 @@ impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha256::Hash
impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha256d::Hash
impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha3_256::Hash
impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha512_256::Hash
+impl core::convert::AsRef<[u8; 384]> for bitcoin_hashes::muhash::Hash
impl core::convert::AsRef<[u8; 48]> for bitcoin_hashes::sha384::Hash
impl core::convert::AsRef<[u8; 64]> for bitcoin_hashes::sha512::Hash
impl core::convert::AsRef<[u8; 8]> for bitcoin_hashes::siphash24::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::hash160::Hash
+impl core::convert::AsRef<[u8]> for bitcoin_hashes::muhash::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::ripemd160::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::sha1::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::sha256::Hash
@@ -188,6 +201,7 @@ impl core::default::Default for bitcoin_hashes::sha512_256::HashEngine
impl core::fmt::Debug for bitcoin_hashes::hash160::Hash
impl core::fmt::Debug for bitcoin_hashes::hash160::HashEngine
impl core::fmt::Debug for bitcoin_hashes::hkdf::MaxLengthError
+impl core::fmt::Debug for bitcoin_hashes::muhash::Hash
impl core::fmt::Debug for bitcoin_hashes::ripemd160::Hash
impl core::fmt::Debug for bitcoin_hashes::ripemd160::HashEngine
impl core::fmt::Debug for bitcoin_hashes::sha1::Hash
@@ -212,6 +226,7 @@ impl core::fmt::Debug for bitcoin_hashes::siphash24::State
impl core::fmt::Display for bitcoin_hashes::hkdf::MaxLengthError
impl core::fmt::Display for bitcoin_hashes::sha256::MidstateError
impl core::hash::Hash for bitcoin_hashes::hash160::Hash
+impl core::hash::Hash for bitcoin_hashes::muhash::Hash
impl core::hash::Hash for bitcoin_hashes::ripemd160::Hash
impl core::hash::Hash for bitcoin_hashes::sha1::Hash
impl core::hash::Hash for bitcoin_hashes::sha256::Hash
@@ -224,6 +239,7 @@ impl core::hash::Hash for bitcoin_hashes::sha512_256::Hash
impl core::hash::Hash for bitcoin_hashes::siphash24::Hash
impl core::marker::Copy for bitcoin_hashes::hash160::Hash
impl core::marker::Copy for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Copy for bitcoin_hashes::muhash::Hash
impl core::marker::Copy for bitcoin_hashes::ripemd160::Hash
impl core::marker::Copy for bitcoin_hashes::sha1::Hash
impl core::marker::Copy for bitcoin_hashes::sha256::Hash
@@ -237,6 +253,7 @@ impl core::marker::Copy for bitcoin_hashes::siphash24::Hash
impl core::marker::Freeze for bitcoin_hashes::hash160::Hash
impl core::marker::Freeze for bitcoin_hashes::hash160::HashEngine
impl core::marker::Freeze for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Freeze for bitcoin_hashes::muhash::Hash
impl core::marker::Freeze for bitcoin_hashes::ripemd160::Hash
impl core::marker::Freeze for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Freeze for bitcoin_hashes::sha1::Hash
@@ -261,6 +278,7 @@ impl core::marker::Freeze for bitcoin_hashes::siphash24::State
impl core::marker::Send for bitcoin_hashes::hash160::Hash
impl core::marker::Send for bitcoin_hashes::hash160::HashEngine
impl core::marker::Send for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Send for bitcoin_hashes::muhash::Hash
impl core::marker::Send for bitcoin_hashes::ripemd160::Hash
impl core::marker::Send for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Send for bitcoin_hashes::sha1::Hash
@@ -284,6 +302,7 @@ impl core::marker::Send for bitcoin_hashes::siphash24::HashEngine
impl core::marker::Send for bitcoin_hashes::siphash24::State
impl core::marker::StructuralPartialEq for bitcoin_hashes::hash160::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::StructuralPartialEq for bitcoin_hashes::muhash::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::ripemd160::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::sha1::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::sha256::Hash
@@ -298,6 +317,7 @@ impl core::marker::StructuralPartialEq for bitcoin_hashes::siphash24::Hash
impl core::marker::Sync for bitcoin_hashes::hash160::Hash
impl core::marker::Sync for bitcoin_hashes::hash160::HashEngine
impl core::marker::Sync for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Sync for bitcoin_hashes::muhash::Hash
impl core::marker::Sync for bitcoin_hashes::ripemd160::Hash
impl core::marker::Sync for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Sync for bitcoin_hashes::sha1::Hash
@@ -322,6 +342,7 @@ impl core::marker::Sync for bitcoin_hashes::siphash24::State
impl core::marker::Unpin for bitcoin_hashes::hash160::Hash
impl core::marker::Unpin for bitcoin_hashes::hash160::HashEngine
impl core::marker::Unpin for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Unpin for bitcoin_hashes::muhash::Hash
impl core::marker::Unpin for bitcoin_hashes::ripemd160::Hash
impl core::marker::Unpin for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Unpin for bitcoin_hashes::sha1::Hash
@@ -346,6 +367,7 @@ impl core::marker::Unpin for bitcoin_hashes::siphash24::State
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::hash160::Hash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::hash160::HashEngine
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::hkdf::MaxLengthError
+impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::muhash::Hash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::ripemd160::Hash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::ripemd160::HashEngine
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::sha1::Hash
@@ -370,6 +392,7 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::siphash24::Stat
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::hash160::Hash
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::hash160::HashEngine
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::hkdf::MaxLengthError
+impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::muhash::Hash
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::ripemd160::Hash
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::ripemd160::HashEngine
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::sha1::Hash
@@ -471,6 +494,7 @@ pub const bitcoin_hashes::IsByteArray::LEN: usize
pub const bitcoin_hashes::hash160::Hash::DISPLAY_BACKWARD: bool
pub const bitcoin_hashes::hash160::HashEngine::BLOCK_SIZE: usize
pub const bitcoin_hashes::hmac::HmacEngine<T>::BLOCK_SIZE: usize
+pub const bitcoin_hashes::muhash::Hash::DISPLAY_BACKWARD: bool
pub const bitcoin_hashes::ripemd160::Hash::DISPLAY_BACKWARD: bool
pub const bitcoin_hashes::ripemd160::HashEngine::BLOCK_SIZE: usize
pub const bitcoin_hashes::sha1::Hash::DISPLAY_BACKWARD: bool
@@ -497,6 +521,10 @@ pub const fn bitcoin_hashes::hash160::Hash::from_byte_array(bytes: [u8; 20]) ->
pub const fn bitcoin_hashes::hash160::Hash::from_bytes_ref(bytes: &[u8; 20]) -> &Self
pub const fn bitcoin_hashes::hash160::Hash::to_byte_array(self) -> [u8; 20]
pub const fn bitcoin_hashes::hash160::HashEngine::new() -> Self
+pub const fn bitcoin_hashes::muhash::Hash::as_byte_array(&self) -> &[u8; 384]
+pub const fn bitcoin_hashes::muhash::Hash::from_byte_array(bytes: [u8; 384]) -> Self
+pub const fn bitcoin_hashes::muhash::Hash::from_bytes_ref(bytes: &[u8; 384]) -> &Self
+pub const fn bitcoin_hashes::muhash::Hash::to_byte_array(self) -> [u8; 384]
pub const fn bitcoin_hashes::ripemd160::Hash::as_byte_array(&self) -> &[u8; 20]
pub const fn bitcoin_hashes::ripemd160::Hash::from_byte_array(bytes: [u8; 20]) -> Self
pub const fn bitcoin_hashes::ripemd160::Hash::from_bytes_ref(bytes: &[u8; 20]) -> &Self
@@ -613,6 +641,20 @@ pub fn bitcoin_hashes::hmac::HmacEngine<T>::from_inner_engines(iengine: T, oengi
pub fn bitcoin_hashes::hmac::HmacEngine<T>::input(&mut self, buf: &[u8])
pub fn bitcoin_hashes::hmac::HmacEngine<T>::n_bytes_hashed(&self) -> u64
pub fn bitcoin_hashes::hmac::HmacEngine<T>::new(key: &[u8]) -> Self where T: core::default::Default
+pub fn bitcoin_hashes::muhash::Hash::as_byte_array(&self) -> &Self::Bytes
+pub fn bitcoin_hashes::muhash::Hash::as_ref(&self) -> &[u8; 384]
+pub fn bitcoin_hashes::muhash::Hash::as_ref(&self) -> &[u8]
+pub fn bitcoin_hashes::muhash::Hash::borrow(&self) -> &[u8; 384]
+pub fn bitcoin_hashes::muhash::Hash::borrow(&self) -> &[u8]
+pub fn bitcoin_hashes::muhash::Hash::clone(&self) -> bitcoin_hashes::muhash::Hash
+pub fn bitcoin_hashes::muhash::Hash::cmp(&self, other: &bitcoin_hashes::muhash::Hash) -> core::cmp::Ordering
+pub fn bitcoin_hashes::muhash::Hash::eq(&self, other: &bitcoin_hashes::muhash::Hash) -> bool
+pub fn bitcoin_hashes::muhash::Hash::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
+pub fn bitcoin_hashes::muhash::Hash::from_byte_array(bytes: Self::Bytes) -> Self
+pub fn bitcoin_hashes::muhash::Hash::from_bytes_mut(bytes: &mut [u8; 384]) -> &mut Self
+pub fn bitcoin_hashes::muhash::Hash::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
+pub fn bitcoin_hashes::muhash::Hash::partial_cmp(&self, other: &bitcoin_hashes::muhash::Hash) -> core::option::Option<core::cmp::Ordering>
+pub fn bitcoin_hashes::muhash::Hash::to_byte_array(self) -> Self::Bytes
pub fn bitcoin_hashes::ripemd160::Hash::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin_hashes::ripemd160::Hash::as_ref(&self) -> &[u8; 20]
pub fn bitcoin_hashes::ripemd160::Hash::as_ref(&self) -> &[u8]
@@ -898,6 +940,7 @@ pub mod bitcoin_hashes::hash160
pub mod bitcoin_hashes::hkdf
pub mod bitcoin_hashes::hmac
pub mod bitcoin_hashes::macros
+pub mod bitcoin_hashes::muhash
pub mod bitcoin_hashes::ripemd160
pub mod bitcoin_hashes::sha1
pub mod bitcoin_hashes::sha256
@@ -946,6 +989,7 @@ pub type bitcoin_hashes::hmac::Hmac<T>::Bytes = <T as bitcoin_hashes::Hash>::Byt
pub type bitcoin_hashes::hmac::Hmac<T>::Err = <T as core::str::traits::FromStr>::Err
pub type bitcoin_hashes::hmac::HmacEngine<T>::Bytes = <T as bitcoin_hashes::HashEngine>::Bytes
pub type bitcoin_hashes::hmac::HmacEngine<T>::Hash = bitcoin_hashes::hmac::Hmac<<T as bitcoin_hashes::HashEngine>::Hash>
+pub type bitcoin_hashes::muhash::Hash::Bytes = [u8; 384]
pub type bitcoin_hashes::ripemd160::Hash::Bytes = [u8; 20]
pub type bitcoin_hashes::ripemd160::HashEngine::Bytes = [u8; 20]
pub type bitcoin_hashes::ripemd160::HashEngine::Hash = bitcoin_hashes::ripemd160::Hash
diff --git a/api/hashes/no-features.txt b/api/hashes/no-features.txt
index ad8375ec..5d4ce4ad 100644
--- a/api/hashes/no-features.txt
+++ b/api/hashes/no-features.txt
@@ -1,5 +1,6 @@
#[repr(transparent)] pub struct bitcoin_hashes::Hash160(_)
#[repr(transparent)] pub struct bitcoin_hashes::Hmac<T: bitcoin_hashes::Hash>(_)
+#[repr(transparent)] pub struct bitcoin_hashes::MuHash(_)
#[repr(transparent)] pub struct bitcoin_hashes::Ripemd160(_)
#[repr(transparent)] pub struct bitcoin_hashes::Sha1(_)
#[repr(transparent)] pub struct bitcoin_hashes::Sha256(_)
@@ -11,6 +12,7 @@
#[repr(transparent)] pub struct bitcoin_hashes::Siphash24(_)
#[repr(transparent)] pub struct bitcoin_hashes::hash160::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::hmac::Hmac<T: bitcoin_hashes::Hash>(_)
+#[repr(transparent)] pub struct bitcoin_hashes::muhash::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::ripemd160::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::sha1::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::sha256::Hash(_)
@@ -22,6 +24,7 @@
#[repr(transparent)] pub struct bitcoin_hashes::sha512_256::Hash(_)
#[repr(transparent)] pub struct bitcoin_hashes::siphash24::Hash(_)
impl bitcoin_hashes::Hash for bitcoin_hashes::hash160::Hash
+impl bitcoin_hashes::Hash for bitcoin_hashes::muhash::Hash
impl bitcoin_hashes::Hash for bitcoin_hashes::ripemd160::Hash
impl bitcoin_hashes::Hash for bitcoin_hashes::sha1::Hash
impl bitcoin_hashes::Hash for bitcoin_hashes::sha256::Hash
@@ -43,6 +46,7 @@ impl bitcoin_hashes::HashEngine for bitcoin_hashes::sha512_256::HashEngine
impl bitcoin_hashes::HashEngine for bitcoin_hashes::siphash24::HashEngine
impl bitcoin_hashes::hash160::Hash
impl bitcoin_hashes::hash160::HashEngine
+impl bitcoin_hashes::muhash::Hash
impl bitcoin_hashes::ripemd160::Hash
impl bitcoin_hashes::ripemd160::HashEngine
impl bitcoin_hashes::sha1::Hash
@@ -69,10 +73,12 @@ impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha256::Hash
impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha256d::Hash
impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha3_256::Hash
impl core::borrow::Borrow<[u8; 32]> for bitcoin_hashes::sha512_256::Hash
+impl core::borrow::Borrow<[u8; 384]> for bitcoin_hashes::muhash::Hash
impl core::borrow::Borrow<[u8; 48]> for bitcoin_hashes::sha384::Hash
impl core::borrow::Borrow<[u8; 64]> for bitcoin_hashes::sha512::Hash
impl core::borrow::Borrow<[u8; 8]> for bitcoin_hashes::siphash24::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::hash160::Hash
+impl core::borrow::Borrow<[u8]> for bitcoin_hashes::muhash::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::ripemd160::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::sha1::Hash
impl core::borrow::Borrow<[u8]> for bitcoin_hashes::sha256::Hash
@@ -85,6 +91,7 @@ impl core::borrow::Borrow<[u8]> for bitcoin_hashes::siphash24::Hash
impl core::clone::Clone for bitcoin_hashes::hash160::Hash
impl core::clone::Clone for bitcoin_hashes::hash160::HashEngine
impl core::clone::Clone for bitcoin_hashes::hkdf::MaxLengthError
+impl core::clone::Clone for bitcoin_hashes::muhash::Hash
impl core::clone::Clone for bitcoin_hashes::ripemd160::Hash
impl core::clone::Clone for bitcoin_hashes::ripemd160::HashEngine
impl core::clone::Clone for bitcoin_hashes::sha1::Hash
@@ -108,6 +115,7 @@ impl core::clone::Clone for bitcoin_hashes::siphash24::HashEngine
impl core::clone::Clone for bitcoin_hashes::siphash24::State
impl core::cmp::Eq for bitcoin_hashes::hash160::Hash
impl core::cmp::Eq for bitcoin_hashes::hkdf::MaxLengthError
+impl core::cmp::Eq for bitcoin_hashes::muhash::Hash
impl core::cmp::Eq for bitcoin_hashes::ripemd160::Hash
impl core::cmp::Eq for bitcoin_hashes::sha1::Hash
impl core::cmp::Eq for bitcoin_hashes::sha256::Hash
@@ -120,6 +128,7 @@ impl core::cmp::Eq for bitcoin_hashes::sha512::Hash
impl core::cmp::Eq for bitcoin_hashes::sha512_256::Hash
impl core::cmp::Eq for bitcoin_hashes::siphash24::Hash
impl core::cmp::Ord for bitcoin_hashes::hash160::Hash
+impl core::cmp::Ord for bitcoin_hashes::muhash::Hash
impl core::cmp::Ord for bitcoin_hashes::ripemd160::Hash
impl core::cmp::Ord for bitcoin_hashes::sha1::Hash
impl core::cmp::Ord for bitcoin_hashes::sha256::Hash
@@ -132,6 +141,7 @@ impl core::cmp::Ord for bitcoin_hashes::sha512_256::Hash
impl core::cmp::Ord for bitcoin_hashes::siphash24::Hash
impl core::cmp::PartialEq for bitcoin_hashes::hash160::Hash
impl core::cmp::PartialEq for bitcoin_hashes::hkdf::MaxLengthError
+impl core::cmp::PartialEq for bitcoin_hashes::muhash::Hash
impl core::cmp::PartialEq for bitcoin_hashes::ripemd160::Hash
impl core::cmp::PartialEq for bitcoin_hashes::sha1::Hash
impl core::cmp::PartialEq for bitcoin_hashes::sha256::Hash
@@ -144,6 +154,7 @@ impl core::cmp::PartialEq for bitcoin_hashes::sha512::Hash
impl core::cmp::PartialEq for bitcoin_hashes::sha512_256::Hash
impl core::cmp::PartialEq for bitcoin_hashes::siphash24::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::hash160::Hash
+impl core::cmp::PartialOrd for bitcoin_hashes::muhash::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::ripemd160::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::sha1::Hash
impl core::cmp::PartialOrd for bitcoin_hashes::sha256::Hash
@@ -161,10 +172,12 @@ impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha256::Hash
impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha256d::Hash
impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha3_256::Hash
impl core::convert::AsRef<[u8; 32]> for bitcoin_hashes::sha512_256::Hash
+impl core::convert::AsRef<[u8; 384]> for bitcoin_hashes::muhash::Hash
impl core::convert::AsRef<[u8; 48]> for bitcoin_hashes::sha384::Hash
impl core::convert::AsRef<[u8; 64]> for bitcoin_hashes::sha512::Hash
impl core::convert::AsRef<[u8; 8]> for bitcoin_hashes::siphash24::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::hash160::Hash
+impl core::convert::AsRef<[u8]> for bitcoin_hashes::muhash::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::ripemd160::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::sha1::Hash
impl core::convert::AsRef<[u8]> for bitcoin_hashes::sha256::Hash
@@ -188,6 +201,7 @@ impl core::default::Default for bitcoin_hashes::sha512_256::HashEngine
impl core::fmt::Debug for bitcoin_hashes::hash160::Hash
impl core::fmt::Debug for bitcoin_hashes::hash160::HashEngine
impl core::fmt::Debug for bitcoin_hashes::hkdf::MaxLengthError
+impl core::fmt::Debug for bitcoin_hashes::muhash::Hash
impl core::fmt::Debug for bitcoin_hashes::ripemd160::Hash
impl core::fmt::Debug for bitcoin_hashes::ripemd160::HashEngine
impl core::fmt::Debug for bitcoin_hashes::sha1::Hash
@@ -212,6 +226,7 @@ impl core::fmt::Debug for bitcoin_hashes::siphash24::State
impl core::fmt::Display for bitcoin_hashes::hkdf::MaxLengthError
impl core::fmt::Display for bitcoin_hashes::sha256::MidstateError
impl core::hash::Hash for bitcoin_hashes::hash160::Hash
+impl core::hash::Hash for bitcoin_hashes::muhash::Hash
impl core::hash::Hash for bitcoin_hashes::ripemd160::Hash
impl core::hash::Hash for bitcoin_hashes::sha1::Hash
impl core::hash::Hash for bitcoin_hashes::sha256::Hash
@@ -224,6 +239,7 @@ impl core::hash::Hash for bitcoin_hashes::sha512_256::Hash
impl core::hash::Hash for bitcoin_hashes::siphash24::Hash
impl core::marker::Copy for bitcoin_hashes::hash160::Hash
impl core::marker::Copy for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Copy for bitcoin_hashes::muhash::Hash
impl core::marker::Copy for bitcoin_hashes::ripemd160::Hash
impl core::marker::Copy for bitcoin_hashes::sha1::Hash
impl core::marker::Copy for bitcoin_hashes::sha256::Hash
@@ -237,6 +253,7 @@ impl core::marker::Copy for bitcoin_hashes::siphash24::Hash
impl core::marker::Freeze for bitcoin_hashes::hash160::Hash
impl core::marker::Freeze for bitcoin_hashes::hash160::HashEngine
impl core::marker::Freeze for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Freeze for bitcoin_hashes::muhash::Hash
impl core::marker::Freeze for bitcoin_hashes::ripemd160::Hash
impl core::marker::Freeze for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Freeze for bitcoin_hashes::sha1::Hash
@@ -261,6 +278,7 @@ impl core::marker::Freeze for bitcoin_hashes::siphash24::State
impl core::marker::Send for bitcoin_hashes::hash160::Hash
impl core::marker::Send for bitcoin_hashes::hash160::HashEngine
impl core::marker::Send for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Send for bitcoin_hashes::muhash::Hash
impl core::marker::Send for bitcoin_hashes::ripemd160::Hash
impl core::marker::Send for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Send for bitcoin_hashes::sha1::Hash
@@ -284,6 +302,7 @@ impl core::marker::Send for bitcoin_hashes::siphash24::HashEngine
impl core::marker::Send for bitcoin_hashes::siphash24::State
impl core::marker::StructuralPartialEq for bitcoin_hashes::hash160::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::StructuralPartialEq for bitcoin_hashes::muhash::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::ripemd160::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::sha1::Hash
impl core::marker::StructuralPartialEq for bitcoin_hashes::sha256::Hash
@@ -298,6 +317,7 @@ impl core::marker::StructuralPartialEq for bitcoin_hashes::siphash24::Hash
impl core::marker::Sync for bitcoin_hashes::hash160::Hash
impl core::marker::Sync for bitcoin_hashes::hash160::HashEngine
impl core::marker::Sync for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Sync for bitcoin_hashes::muhash::Hash
impl core::marker::Sync for bitcoin_hashes::ripemd160::Hash
impl core::marker::Sync for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Sync for bitcoin_hashes::sha1::Hash
@@ -322,6 +342,7 @@ impl core::marker::Sync for bitcoin_hashes::siphash24::State
impl core::marker::Unpin for bitcoin_hashes::hash160::Hash
impl core::marker::Unpin for bitcoin_hashes::hash160::HashEngine
impl core::marker::Unpin for bitcoin_hashes::hkdf::MaxLengthError
+impl core::marker::Unpin for bitcoin_hashes::muhash::Hash
impl core::marker::Unpin for bitcoin_hashes::ripemd160::Hash
impl core::marker::Unpin for bitcoin_hashes::ripemd160::HashEngine
impl core::marker::Unpin for bitcoin_hashes::sha1::Hash
@@ -346,6 +367,7 @@ impl core::marker::Unpin for bitcoin_hashes::siphash24::State
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::hash160::Hash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::hash160::HashEngine
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::hkdf::MaxLengthError
+impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::muhash::Hash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::ripemd160::Hash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::ripemd160::HashEngine
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::sha1::Hash
@@ -370,6 +392,7 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_hashes::siphash24::Stat
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::hash160::Hash
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::hash160::HashEngine
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::hkdf::MaxLengthError
+impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::muhash::Hash
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::ripemd160::Hash
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::ripemd160::HashEngine
impl core::panic::unwind_safe::UnwindSafe for bitcoin_hashes::sha1::Hash
@@ -471,6 +494,7 @@ pub const bitcoin_hashes::IsByteArray::LEN: usize
pub const bitcoin_hashes::hash160::Hash::DISPLAY_BACKWARD: bool
pub const bitcoin_hashes::hash160::HashEngine::BLOCK_SIZE: usize
pub const bitcoin_hashes::hmac::HmacEngine<T>::BLOCK_SIZE: usize
+pub const bitcoin_hashes::muhash::Hash::DISPLAY_BACKWARD: bool
pub const bitcoin_hashes::ripemd160::Hash::DISPLAY_BACKWARD: bool
pub const bitcoin_hashes::ripemd160::HashEngine::BLOCK_SIZE: usize
pub const bitcoin_hashes::sha1::Hash::DISPLAY_BACKWARD: bool
@@ -497,6 +521,10 @@ pub const fn bitcoin_hashes::hash160::Hash::from_byte_array(bytes: [u8; 20]) ->
pub const fn bitcoin_hashes::hash160::Hash::from_bytes_ref(bytes: &[u8; 20]) -> &Self
pub const fn bitcoin_hashes::hash160::Hash::to_byte_array(self) -> [u8; 20]
pub const fn bitcoin_hashes::hash160::HashEngine::new() -> Self
+pub const fn bitcoin_hashes::muhash::Hash::as_byte_array(&self) -> &[u8; 384]
+pub const fn bitcoin_hashes::muhash::Hash::from_byte_array(bytes: [u8; 384]) -> Self
+pub const fn bitcoin_hashes::muhash::Hash::from_bytes_ref(bytes: &[u8; 384]) -> &Self
+pub const fn bitcoin_hashes::muhash::Hash::to_byte_array(self) -> [u8; 384]
pub const fn bitcoin_hashes::ripemd160::Hash::as_byte_array(&self) -> &[u8; 20]
pub const fn bitcoin_hashes::ripemd160::Hash::from_byte_array(bytes: [u8; 20]) -> Self
pub const fn bitcoin_hashes::ripemd160::Hash::from_bytes_ref(bytes: &[u8; 20]) -> &Self
@@ -612,6 +640,20 @@ pub fn bitcoin_hashes::hmac::HmacEngine<T>::from_inner_engines(iengine: T, oengi
pub fn bitcoin_hashes::hmac::HmacEngine<T>::input(&mut self, buf: &[u8])
pub fn bitcoin_hashes::hmac::HmacEngine<T>::n_bytes_hashed(&self) -> u64
pub fn bitcoin_hashes::hmac::HmacEngine<T>::new(key: &[u8]) -> Self where T: core::default::Default
+pub fn bitcoin_hashes::muhash::Hash::as_byte_array(&self) -> &Self::Bytes
+pub fn bitcoin_hashes::muhash::Hash::as_ref(&self) -> &[u8; 384]
+pub fn bitcoin_hashes::muhash::Hash::as_ref(&self) -> &[u8]
+pub fn bitcoin_hashes::muhash::Hash::borrow(&self) -> &[u8; 384]
+pub fn bitcoin_hashes::muhash::Hash::borrow(&self) -> &[u8]
+pub fn bitcoin_hashes::muhash::Hash::clone(&self) -> bitcoin_hashes::muhash::Hash
+pub fn bitcoin_hashes::muhash::Hash::cmp(&self, other: &bitcoin_hashes::muhash::Hash) -> core::cmp::Ordering
+pub fn bitcoin_hashes::muhash::Hash::eq(&self, other: &bitcoin_hashes::muhash::Hash) -> bool
+pub fn bitcoin_hashes::muhash::Hash::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
+pub fn bitcoin_hashes::muhash::Hash::from_byte_array(bytes: Self::Bytes) -> Self
+pub fn bitcoin_hashes::muhash::Hash::from_bytes_mut(bytes: &mut [u8; 384]) -> &mut Self
+pub fn bitcoin_hashes::muhash::Hash::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
+pub fn bitcoin_hashes::muhash::Hash::partial_cmp(&self, other: &bitcoin_hashes::muhash::Hash) -> core::option::Option<core::cmp::Ordering>
+pub fn bitcoin_hashes::muhash::Hash::to_byte_array(self) -> Self::Bytes
pub fn bitcoin_hashes::ripemd160::Hash::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin_hashes::ripemd160::Hash::as_ref(&self) -> &[u8; 20]
pub fn bitcoin_hashes::ripemd160::Hash::as_ref(&self) -> &[u8]
@@ -897,6 +939,7 @@ pub mod bitcoin_hashes::hash160
pub mod bitcoin_hashes::hkdf
pub mod bitcoin_hashes::hmac
pub mod bitcoin_hashes::macros
+pub mod bitcoin_hashes::muhash
pub mod bitcoin_hashes::ripemd160
pub mod bitcoin_hashes::sha1
pub mod bitcoin_hashes::sha256
@@ -945,6 +988,7 @@ pub type bitcoin_hashes::hmac::Hmac<T>::Bytes = <T as bitcoin_hashes::Hash>::Byt
pub type bitcoin_hashes::hmac::Hmac<T>::Err = <T as core::str::traits::FromStr>::Err
pub type bitcoin_hashes::hmac::HmacEngine<T>::Bytes = <T as bitcoin_hashes::HashEngine>::Bytes
pub type bitcoin_hashes::hmac::HmacEngine<T>::Hash = bitcoin_hashes::hmac::Hmac<<T as bitcoin_hashes::HashEngine>::Hash>
+pub type bitcoin_hashes::muhash::Hash::Bytes = [u8; 384]
pub type bitcoin_hashes::ripemd160::Hash::Bytes = [u8; 20]
pub type bitcoin_hashes::ripemd160::HashEngine::Bytes = [u8; 20]
pub type bitcoin_hashes::ripemd160::HashEngine::Hash = bitcoin_hashes::ripemd160::Hash
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.