Merge rust-bitcoin/rust-bitcoin#2864: Add trait bound to Merkle tree method; fix typing

90b6d6748b merkle_tree: remove some now-redundant code from block.rs (Andrew Poelstra)
48ad5e4789 api changes for "rewrite merkle root calculation" (Andrew Poelstra)
f7ce9bbee8 merkle_node: rewrite algorithm (Andrew Poelstra)
2bc97b22e2 api changes for new calculate_root method (Andrew Poelstra)
8d5cb014ce merkle_tree: introduce MerkleNode trait to better-type merkle tree calculation (Andrew Poelstra)
04353901ba api changes after moving the hashes (Andrew Poelstra)
5d8aa94069 Move merkle_tree hash types (Andrew Poelstra)

Pull request description:

  Alternate to https://github.com/rust-bitcoin/rust-bitcoin/pull/2853. Takes patch 1 from that PR.

ACKs for top commit:
  Kixunil:
    ACK 90b6d6748b
  tcharding:
    ACK 90b6d6748b

Tree-SHA512: 0e0a3f532e2efb4116f4ebc50719d3a2022c37405b0a22b15f79189b54b623e906e8fdd53997efc611eac5ceaee4c0ef12dab1d5cb595755c0c9e091c0a5904f
This commit is contained in:
Andrew Poelstra 2024-06-19 13:49:50 +00:00
commit d063cc1d5c
No known key found for this signature in database
GPG Key ID: C588D63CE41B97C1
9 changed files with 601 additions and 607 deletions

View File

@ -145,10 +145,8 @@ impl bitcoin::bip32::Xpub
impl bitcoin::blockdata::block::Block
impl bitcoin::blockdata::block::BlockHash
impl bitcoin::blockdata::block::Header
impl bitcoin::blockdata::block::TxMerkleNode
impl bitcoin::blockdata::block::Version
impl bitcoin::blockdata::block::WitnessCommitment
impl bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin::blockdata::constants::ChainHash
impl bitcoin::blockdata::locktime::absolute::LockTime
impl bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -198,11 +196,11 @@ impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::bip158::
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::bip158::FilterHeader>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::block::Header>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxIn>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::consensus::encode::VarInt>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::p2p::address::AddrV2Message>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::p2p::message_blockdata::Inventory>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::taproot::TapLeafHash>
@ -219,9 +217,7 @@ impl bitcoin::consensus::encode::Decodable for bitcoin::bip158::FilterHeader
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::Block
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::BlockHash
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::Header
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::TxMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::Version
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::locktime::absolute::LockTime
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::script::ScriptBuf
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::transaction::OutPoint
@ -236,6 +232,8 @@ impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::witness::Witn
impl bitcoin::consensus::encode::Decodable for bitcoin::consensus::encode::CheckedData
impl bitcoin::consensus::encode::Decodable for bitcoin::consensus::encode::VarInt
impl bitcoin::consensus::encode::Decodable for bitcoin::merkle_tree::PartialMerkleTree
impl bitcoin::consensus::encode::Decodable for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::p2p::Magic
impl bitcoin::consensus::encode::Decodable for bitcoin::p2p::ServiceFlags
impl bitcoin::consensus::encode::Decodable for bitcoin::p2p::address::AddrV2
@ -299,11 +297,11 @@ impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::bip158::
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::bip158::FilterHeader>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::block::Header>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxIn>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::consensus::encode::VarInt>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::p2p::address::AddrV2Message>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::p2p::message_blockdata::Inventory>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::taproot::TapLeafHash>
@ -320,9 +318,7 @@ impl bitcoin::consensus::encode::Encodable for bitcoin::bip158::FilterHeader
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::Block
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::BlockHash
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::Header
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::TxMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::Version
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::locktime::absolute::LockTime
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::script::Script
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::script::ScriptBuf
@ -338,6 +334,8 @@ impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::witness::Witn
impl bitcoin::consensus::encode::Encodable for bitcoin::consensus::encode::CheckedData
impl bitcoin::consensus::encode::Encodable for bitcoin::consensus::encode::VarInt
impl bitcoin::consensus::encode::Encodable for bitcoin::merkle_tree::PartialMerkleTree
impl bitcoin::consensus::encode::Encodable for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::p2p::Magic
impl bitcoin::consensus::encode::Encodable for bitcoin::p2p::ServiceFlags
impl bitcoin::consensus::encode::Encodable for bitcoin::p2p::address::AddrV2
@ -393,7 +391,11 @@ impl bitcoin::key::TapTweak for bitcoin::key::UntweakedKeypair
impl bitcoin::key::TapTweak for bitcoin::key::UntweakedPublicKey
impl bitcoin::key::TweakedKeypair
impl bitcoin::key::TweakedPublicKey
impl bitcoin::merkle_tree::MerkleNode for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::merkle_tree::MerkleNode for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::merkle_tree::PartialMerkleTree
impl bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::network::Network
impl bitcoin::network::NetworkKind
impl bitcoin::p2p::Magic
@ -449,13 +451,13 @@ impl bitcoin_hashes::Hash for bitcoin::bip158::FilterHash
impl bitcoin_hashes::Hash for bitcoin::bip158::FilterHeader
impl bitcoin_hashes::Hash for bitcoin::bip32::XKeyIdentifier
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::BlockHash
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::TxMerkleNode
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::WitnessCommitment
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin_hashes::Hash for bitcoin::blockdata::script::ScriptHash
impl bitcoin_hashes::Hash for bitcoin::blockdata::script::WScriptHash
impl bitcoin_hashes::Hash for bitcoin::blockdata::transaction::Txid
impl bitcoin_hashes::Hash for bitcoin::blockdata::transaction::Wtxid
impl bitcoin_hashes::Hash for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin_hashes::Hash for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin_hashes::Hash for bitcoin::taproot::TapLeafHash
impl bitcoin_hashes::Hash for bitcoin::taproot::TapNodeHash
impl bitcoin_hashes::Hash for bitcoin::taproot::TapTweakHash
@ -468,13 +470,13 @@ impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::bip158:
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::bip158::FilterHeader
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::bip32::XKeyIdentifier
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::blockdata::block::BlockHash
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::blockdata::block::TxMerkleNode
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::blockdata::block::WitnessCommitment
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::blockdata::script::ScriptHash
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::blockdata::script::WScriptHash
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::blockdata::transaction::Txid
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::blockdata::transaction::Wtxid
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::taproot::TapLeafHash
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::taproot::TapNodeHash
impl bitcoin_hashes::serde_macros::serde_details::SerdeHash for bitcoin::taproot::TapTweakHash
@ -500,15 +502,15 @@ impl core::borrow::Borrow<[u8]> for bitcoin::bip32::ChainCode
impl core::borrow::Borrow<[u8]> for bitcoin::bip32::Fingerprint
impl core::borrow::Borrow<[u8]> for bitcoin::bip32::XKeyIdentifier
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::BlockHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::TxMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::WitnessCommitment
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::constants::ChainHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::script::ScriptHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::script::WScriptHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::transaction::Txid
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::transaction::Wtxid
impl core::borrow::Borrow<[u8]> for bitcoin::ecdsa::SerializedSignature
impl core::borrow::Borrow<[u8]> for bitcoin::merkle_tree::TxMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::p2p::Magic
impl core::borrow::Borrow<[u8]> for bitcoin::taproot::TapLeafHash
impl core::borrow::Borrow<[u8]> for bitcoin::taproot::TapNodeHash
@ -578,11 +580,9 @@ impl core::clone::Clone for bitcoin::blockdata::block::Bip34Error
impl core::clone::Clone for bitcoin::blockdata::block::Block
impl core::clone::Clone for bitcoin::blockdata::block::BlockHash
impl core::clone::Clone for bitcoin::blockdata::block::Header
impl core::clone::Clone for bitcoin::blockdata::block::TxMerkleNode
impl core::clone::Clone for bitcoin::blockdata::block::ValidationError
impl core::clone::Clone for bitcoin::blockdata::block::Version
impl core::clone::Clone for bitcoin::blockdata::block::WitnessCommitment
impl core::clone::Clone for bitcoin::blockdata::block::WitnessMerkleNode
impl core::clone::Clone for bitcoin::blockdata::constants::ChainHash
impl core::clone::Clone for bitcoin::blockdata::locktime::absolute::LockTime
impl core::clone::Clone for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -643,6 +643,8 @@ impl core::clone::Clone for bitcoin::key::TweakedPublicKey
impl core::clone::Clone for bitcoin::key::UncompressedPublicKeyError
impl core::clone::Clone for bitcoin::merkle_tree::MerkleBlockError
impl core::clone::Clone for bitcoin::merkle_tree::PartialMerkleTree
impl core::clone::Clone for bitcoin::merkle_tree::TxMerkleNode
impl core::clone::Clone for bitcoin::merkle_tree::WitnessMerkleNode
impl core::clone::Clone for bitcoin::network::Network
impl core::clone::Clone for bitcoin::network::NetworkKind
impl core::clone::Clone for bitcoin::network::ParseNetworkError
@ -778,11 +780,9 @@ impl core::cmp::Eq for bitcoin::blockdata::block::Bip34Error
impl core::cmp::Eq for bitcoin::blockdata::block::Block
impl core::cmp::Eq for bitcoin::blockdata::block::BlockHash
impl core::cmp::Eq for bitcoin::blockdata::block::Header
impl core::cmp::Eq for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::Eq for bitcoin::blockdata::block::ValidationError
impl core::cmp::Eq for bitcoin::blockdata::block::Version
impl core::cmp::Eq for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::Eq for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::Eq for bitcoin::blockdata::constants::ChainHash
impl core::cmp::Eq for bitcoin::blockdata::locktime::absolute::LockTime
impl core::cmp::Eq for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -843,6 +843,8 @@ impl core::cmp::Eq for bitcoin::key::TweakedPublicKey
impl core::cmp::Eq for bitcoin::key::UncompressedPublicKeyError
impl core::cmp::Eq for bitcoin::merkle_tree::MerkleBlockError
impl core::cmp::Eq for bitcoin::merkle_tree::PartialMerkleTree
impl core::cmp::Eq for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::Eq for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::Eq for bitcoin::network::Network
impl core::cmp::Eq for bitcoin::network::NetworkKind
impl core::cmp::Eq for bitcoin::network::ParseNetworkError
@ -958,10 +960,8 @@ impl core::cmp::Ord for bitcoin::bip32::XKeyIdentifier
impl core::cmp::Ord for bitcoin::bip32::Xpub
impl core::cmp::Ord for bitcoin::blockdata::block::BlockHash
impl core::cmp::Ord for bitcoin::blockdata::block::Header
impl core::cmp::Ord for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::Ord for bitcoin::blockdata::block::Version
impl core::cmp::Ord for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::Ord for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::Ord for bitcoin::blockdata::constants::ChainHash
impl core::cmp::Ord for bitcoin::blockdata::opcodes::ClassifyContext
impl core::cmp::Ord for bitcoin::blockdata::script::PushBytes
@ -985,6 +985,8 @@ impl core::cmp::Ord for bitcoin::consensus::encode::VarInt
impl core::cmp::Ord for bitcoin::key::SortKey
impl core::cmp::Ord for bitcoin::key::TweakedKeypair
impl core::cmp::Ord for bitcoin::key::TweakedPublicKey
impl core::cmp::Ord for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::Ord for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::Ord for bitcoin::network::Network
impl core::cmp::Ord for bitcoin::network::NetworkKind
impl core::cmp::Ord for bitcoin::p2p::Magic
@ -1067,11 +1069,9 @@ impl core::cmp::PartialEq for bitcoin::blockdata::block::Bip34Error
impl core::cmp::PartialEq for bitcoin::blockdata::block::Block
impl core::cmp::PartialEq for bitcoin::blockdata::block::BlockHash
impl core::cmp::PartialEq for bitcoin::blockdata::block::Header
impl core::cmp::PartialEq for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::PartialEq for bitcoin::blockdata::block::ValidationError
impl core::cmp::PartialEq for bitcoin::blockdata::block::Version
impl core::cmp::PartialEq for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::PartialEq for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::PartialEq for bitcoin::blockdata::constants::ChainHash
impl core::cmp::PartialEq for bitcoin::blockdata::locktime::absolute::LockTime
impl core::cmp::PartialEq for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -1132,6 +1132,8 @@ impl core::cmp::PartialEq for bitcoin::key::TweakedPublicKey
impl core::cmp::PartialEq for bitcoin::key::UncompressedPublicKeyError
impl core::cmp::PartialEq for bitcoin::merkle_tree::MerkleBlockError
impl core::cmp::PartialEq for bitcoin::merkle_tree::PartialMerkleTree
impl core::cmp::PartialEq for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::PartialEq for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::PartialEq for bitcoin::network::Network
impl core::cmp::PartialEq for bitcoin::network::NetworkKind
impl core::cmp::PartialEq for bitcoin::network::ParseNetworkError
@ -1251,10 +1253,8 @@ impl core::cmp::PartialOrd for bitcoin::bip32::XKeyIdentifier
impl core::cmp::PartialOrd for bitcoin::bip32::Xpub
impl core::cmp::PartialOrd for bitcoin::blockdata::block::BlockHash
impl core::cmp::PartialOrd for bitcoin::blockdata::block::Header
impl core::cmp::PartialOrd for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::PartialOrd for bitcoin::blockdata::block::Version
impl core::cmp::PartialOrd for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::PartialOrd for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::PartialOrd for bitcoin::blockdata::constants::ChainHash
impl core::cmp::PartialOrd for bitcoin::blockdata::locktime::absolute::LockTime
impl core::cmp::PartialOrd for bitcoin::blockdata::locktime::relative::LockTime
@ -1280,6 +1280,8 @@ impl core::cmp::PartialOrd for bitcoin::consensus::encode::VarInt
impl core::cmp::PartialOrd for bitcoin::key::SortKey
impl core::cmp::PartialOrd for bitcoin::key::TweakedKeypair
impl core::cmp::PartialOrd for bitcoin::key::TweakedPublicKey
impl core::cmp::PartialOrd for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::PartialOrd for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::PartialOrd for bitcoin::network::Network
impl core::cmp::PartialOrd for bitcoin::network::NetworkKind
impl core::cmp::PartialOrd for bitcoin::p2p::Magic
@ -1425,13 +1427,13 @@ impl core::convert::AsRef<[u8; 32]> for bitcoin::bip158::FilterHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::bip158::FilterHeader
impl core::convert::AsRef<[u8; 32]> for bitcoin::bip32::ChainCode
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::BlockHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::WitnessCommitment
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::constants::ChainHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::script::WScriptHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::transaction::Txid
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::AsRef<[u8; 32]> for bitcoin::merkle_tree::TxMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::taproot::TapLeafHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::taproot::TapNodeHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::taproot::TapTweakHash
@ -1450,9 +1452,7 @@ impl core::convert::AsRef<[u8]> for bitcoin::bip32::ChainCode
impl core::convert::AsRef<[u8]> for bitcoin::bip32::Fingerprint
impl core::convert::AsRef<[u8]> for bitcoin::bip32::XKeyIdentifier
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::BlockHash
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::WitnessCommitment
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::constants::ChainHash
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::script::PushBytes
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::script::Script
@ -1462,6 +1462,8 @@ impl core::convert::AsRef<[u8]> for bitcoin::blockdata::script::WScriptHash
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::transaction::Txid
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::AsRef<[u8]> for bitcoin::ecdsa::SerializedSignature
impl core::convert::AsRef<[u8]> for bitcoin::merkle_tree::TxMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::p2p::Magic
impl core::convert::AsRef<[u8]> for bitcoin::taproot::TapLeafHash
impl core::convert::AsRef<[u8]> for bitcoin::taproot::TapNodeHash
@ -1816,9 +1818,7 @@ impl core::convert::From<bitcoin::bip32::Xpub> for bitcoin::bip32::XKeyIdentifie
impl core::convert::From<bitcoin::blockdata::block::Block> for bitcoin::blockdata::block::BlockHash
impl core::convert::From<bitcoin::blockdata::block::BlockHash> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::block::Header> for bitcoin::blockdata::block::BlockHash
impl core::convert::From<bitcoin::blockdata::block::TxMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::block::WitnessCommitment> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::block::WitnessMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::locktime::relative::LockTime> for bitcoin::blockdata::transaction::Sequence
impl core::convert::From<bitcoin::blockdata::script::PushBytesBuf> for alloc::vec::Vec<u8>
impl core::convert::From<bitcoin::blockdata::script::ScriptBuf> for alloc::borrow::Cow<'_, bitcoin::blockdata::script::Script>
@ -1843,9 +1843,7 @@ impl core::convert::From<bitcoin::blockdata::transaction::InputsIndexError> for
impl core::convert::From<bitcoin::blockdata::transaction::Sequence> for u32
impl core::convert::From<bitcoin::blockdata::transaction::Transaction> for bitcoin::blockdata::transaction::Txid
impl core::convert::From<bitcoin::blockdata::transaction::Transaction> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::From<bitcoin::blockdata::transaction::Txid> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::From<bitcoin::blockdata::transaction::Txid> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::transaction::Wtxid> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::From<bitcoin::blockdata::transaction::Wtxid> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::consensus::encode::Error> for bitcoin::psbt::Error
impl core::convert::From<bitcoin::consensus::validation::BitcoinconsensusError> for bitcoin::consensus::validation::TxVerifyError
@ -1855,6 +1853,8 @@ impl core::convert::From<bitcoin::key::InvalidBase58PayloadLengthError> for bitc
impl core::convert::From<bitcoin::key::TweakedKeypair> for bitcoin::key::TweakedPublicKey
impl core::convert::From<bitcoin::key::TweakedKeypair> for secp256k1::key::Keypair
impl core::convert::From<bitcoin::key::TweakedPublicKey> for secp256k1::key::XOnlyPublicKey
impl core::convert::From<bitcoin::merkle_tree::TxMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::merkle_tree::WitnessMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::network::Network> for &'static bitcoin::consensus::params::Params
impl core::convert::From<bitcoin::network::Network> for bitcoin::address::KnownHrp
impl core::convert::From<bitcoin::network::Network> for bitcoin::consensus::params::Params
@ -1890,11 +1890,11 @@ impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::SegwitV0Sig
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::bip158::FilterHash
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::bip158::FilterHeader
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::BlockHash
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::WitnessCommitment
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::transaction::Txid
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::merkle_tree::TxMerkleNode
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::convert::From<bitcoin_hashes::sha256t::Hash<bitcoin::TapSighashTag>> for bitcoin::TapSighash
impl core::convert::From<bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapBranchTag>> for bitcoin::taproot::TapNodeHash
impl core::convert::From<bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapLeafTag>> for bitcoin::taproot::TapLeafHash
@ -2132,11 +2132,9 @@ impl core::fmt::Debug for bitcoin::blockdata::block::Bip34Error
impl core::fmt::Debug for bitcoin::blockdata::block::Block
impl core::fmt::Debug for bitcoin::blockdata::block::BlockHash
impl core::fmt::Debug for bitcoin::blockdata::block::Header
impl core::fmt::Debug for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::Debug for bitcoin::blockdata::block::ValidationError
impl core::fmt::Debug for bitcoin::blockdata::block::Version
impl core::fmt::Debug for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::Debug for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::Debug for bitcoin::blockdata::constants::ChainHash
impl core::fmt::Debug for bitcoin::blockdata::locktime::absolute::LockTime
impl core::fmt::Debug for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2201,6 +2199,8 @@ impl core::fmt::Debug for bitcoin::key::TweakedPublicKey
impl core::fmt::Debug for bitcoin::key::UncompressedPublicKeyError
impl core::fmt::Debug for bitcoin::merkle_tree::MerkleBlockError
impl core::fmt::Debug for bitcoin::merkle_tree::PartialMerkleTree
impl core::fmt::Debug for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::Debug for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::Debug for bitcoin::network::Network
impl core::fmt::Debug for bitcoin::network::NetworkKind
impl core::fmt::Debug for bitcoin::network::ParseNetworkError
@ -2325,10 +2325,8 @@ impl core::fmt::Display for bitcoin::bip32::Xpriv
impl core::fmt::Display for bitcoin::bip32::Xpub
impl core::fmt::Display for bitcoin::blockdata::block::Bip34Error
impl core::fmt::Display for bitcoin::blockdata::block::BlockHash
impl core::fmt::Display for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::Display for bitcoin::blockdata::block::ValidationError
impl core::fmt::Display for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::Display for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::Display for bitcoin::blockdata::constants::ChainHash
impl core::fmt::Display for bitcoin::blockdata::locktime::absolute::LockTime
impl core::fmt::Display for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2375,6 +2373,8 @@ impl core::fmt::Display for bitcoin::key::ParsePublicKeyError
impl core::fmt::Display for bitcoin::key::TweakedPublicKey
impl core::fmt::Display for bitcoin::key::UncompressedPublicKeyError
impl core::fmt::Display for bitcoin::merkle_tree::MerkleBlockError
impl core::fmt::Display for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::Display for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::Display for bitcoin::network::Network
impl core::fmt::Display for bitcoin::network::ParseNetworkError
impl core::fmt::Display for bitcoin::network::UnknownChainHashError
@ -2430,9 +2430,7 @@ impl core::fmt::LowerHex for bitcoin::bip32::ChainCode
impl core::fmt::LowerHex for bitcoin::bip32::Fingerprint
impl core::fmt::LowerHex for bitcoin::bip32::XKeyIdentifier
impl core::fmt::LowerHex for bitcoin::blockdata::block::BlockHash
impl core::fmt::LowerHex for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::LowerHex for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::LowerHex for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::LowerHex for bitcoin::blockdata::constants::ChainHash
impl core::fmt::LowerHex for bitcoin::blockdata::script::Script
impl core::fmt::LowerHex for bitcoin::blockdata::script::ScriptBuf
@ -2443,6 +2441,8 @@ impl core::fmt::LowerHex for bitcoin::blockdata::transaction::Txid
impl core::fmt::LowerHex for bitcoin::blockdata::transaction::Wtxid
impl core::fmt::LowerHex for bitcoin::ecdsa::SerializedSignature
impl core::fmt::LowerHex for bitcoin::key::TweakedPublicKey
impl core::fmt::LowerHex for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::LowerHex for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::LowerHex for bitcoin::p2p::Magic
impl core::fmt::LowerHex for bitcoin::p2p::ServiceFlags
impl core::fmt::LowerHex for bitcoin::pow::CompactTarget
@ -2465,9 +2465,7 @@ impl core::fmt::UpperHex for bitcoin::bip32::ChainCode
impl core::fmt::UpperHex for bitcoin::bip32::Fingerprint
impl core::fmt::UpperHex for bitcoin::bip32::XKeyIdentifier
impl core::fmt::UpperHex for bitcoin::blockdata::block::BlockHash
impl core::fmt::UpperHex for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::UpperHex for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::UpperHex for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::UpperHex for bitcoin::blockdata::constants::ChainHash
impl core::fmt::UpperHex for bitcoin::blockdata::script::Script
impl core::fmt::UpperHex for bitcoin::blockdata::script::ScriptBuf
@ -2477,6 +2475,8 @@ impl core::fmt::UpperHex for bitcoin::blockdata::transaction::Sequence
impl core::fmt::UpperHex for bitcoin::blockdata::transaction::Txid
impl core::fmt::UpperHex for bitcoin::blockdata::transaction::Wtxid
impl core::fmt::UpperHex for bitcoin::ecdsa::SerializedSignature
impl core::fmt::UpperHex for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::UpperHex for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::UpperHex for bitcoin::p2p::Magic
impl core::fmt::UpperHex for bitcoin::p2p::ServiceFlags
impl core::fmt::UpperHex for bitcoin::pow::CompactTarget
@ -2517,10 +2517,8 @@ impl core::hash::Hash for bitcoin::bip32::XKeyIdentifier
impl core::hash::Hash for bitcoin::bip32::Xpub
impl core::hash::Hash for bitcoin::blockdata::block::BlockHash
impl core::hash::Hash for bitcoin::blockdata::block::Header
impl core::hash::Hash for bitcoin::blockdata::block::TxMerkleNode
impl core::hash::Hash for bitcoin::blockdata::block::Version
impl core::hash::Hash for bitcoin::blockdata::block::WitnessCommitment
impl core::hash::Hash for bitcoin::blockdata::block::WitnessMerkleNode
impl core::hash::Hash for bitcoin::blockdata::constants::ChainHash
impl core::hash::Hash for bitcoin::blockdata::locktime::absolute::LockTime
impl core::hash::Hash for bitcoin::blockdata::locktime::relative::LockTime
@ -2547,6 +2545,8 @@ impl core::hash::Hash for bitcoin::ecdsa::Signature
impl core::hash::Hash for bitcoin::key::SortKey
impl core::hash::Hash for bitcoin::key::TweakedKeypair
impl core::hash::Hash for bitcoin::key::TweakedPublicKey
impl core::hash::Hash for bitcoin::merkle_tree::TxMerkleNode
impl core::hash::Hash for bitcoin::merkle_tree::WitnessMerkleNode
impl core::hash::Hash for bitcoin::network::Network
impl core::hash::Hash for bitcoin::network::NetworkKind
impl core::hash::Hash for bitcoin::p2p::Magic
@ -2627,10 +2627,8 @@ impl core::marker::Copy for bitcoin::bip32::Xpriv
impl core::marker::Copy for bitcoin::bip32::Xpub
impl core::marker::Copy for bitcoin::blockdata::block::BlockHash
impl core::marker::Copy for bitcoin::blockdata::block::Header
impl core::marker::Copy for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Copy for bitcoin::blockdata::block::Version
impl core::marker::Copy for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Copy for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Copy for bitcoin::blockdata::constants::ChainHash
impl core::marker::Copy for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Copy for bitcoin::blockdata::locktime::relative::LockTime
@ -2653,6 +2651,8 @@ impl core::marker::Copy for bitcoin::ecdsa::Signature
impl core::marker::Copy for bitcoin::key::SortKey
impl core::marker::Copy for bitcoin::key::TweakedKeypair
impl core::marker::Copy for bitcoin::key::TweakedPublicKey
impl core::marker::Copy for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Copy for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Copy for bitcoin::network::Network
impl core::marker::Copy for bitcoin::network::NetworkKind
impl core::marker::Copy for bitcoin::p2p::Magic
@ -2729,11 +2729,9 @@ impl core::marker::Freeze for bitcoin::blockdata::block::Bip34Error
impl core::marker::Freeze for bitcoin::blockdata::block::Block
impl core::marker::Freeze for bitcoin::blockdata::block::BlockHash
impl core::marker::Freeze for bitcoin::blockdata::block::Header
impl core::marker::Freeze for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Freeze for bitcoin::blockdata::block::ValidationError
impl core::marker::Freeze for bitcoin::blockdata::block::Version
impl core::marker::Freeze for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Freeze for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Freeze for bitcoin::blockdata::constants::ChainHash
impl core::marker::Freeze for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Freeze for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2800,6 +2798,8 @@ impl core::marker::Freeze for bitcoin::key::TweakedPublicKey
impl core::marker::Freeze for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Freeze for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Freeze for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Freeze for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Freeze for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Freeze for bitcoin::network::Network
impl core::marker::Freeze for bitcoin::network::NetworkKind
impl core::marker::Freeze for bitcoin::network::ParseNetworkError
@ -2941,11 +2941,9 @@ impl core::marker::Send for bitcoin::blockdata::block::Bip34Error
impl core::marker::Send for bitcoin::blockdata::block::Block
impl core::marker::Send for bitcoin::blockdata::block::BlockHash
impl core::marker::Send for bitcoin::blockdata::block::Header
impl core::marker::Send for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Send for bitcoin::blockdata::block::ValidationError
impl core::marker::Send for bitcoin::blockdata::block::Version
impl core::marker::Send for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Send for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Send for bitcoin::blockdata::constants::ChainHash
impl core::marker::Send for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Send for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3012,6 +3010,8 @@ impl core::marker::Send for bitcoin::key::TweakedPublicKey
impl core::marker::Send for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Send for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Send for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Send for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Send for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Send for bitcoin::network::Network
impl core::marker::Send for bitcoin::network::NetworkKind
impl core::marker::Send for bitcoin::network::ParseNetworkError
@ -3150,11 +3150,9 @@ impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Bip34Error
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Block
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::BlockHash
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Header
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::ValidationError
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Version
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::blockdata::constants::ChainHash
impl core::marker::StructuralPartialEq for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::StructuralPartialEq for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3214,6 +3212,8 @@ impl core::marker::StructuralPartialEq for bitcoin::key::TweakedPublicKey
impl core::marker::StructuralPartialEq for bitcoin::key::UncompressedPublicKeyError
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::network::Network
impl core::marker::StructuralPartialEq for bitcoin::network::NetworkKind
impl core::marker::StructuralPartialEq for bitcoin::network::ParseNetworkError
@ -3349,11 +3349,9 @@ impl core::marker::Sync for bitcoin::blockdata::block::Bip34Error
impl core::marker::Sync for bitcoin::blockdata::block::Block
impl core::marker::Sync for bitcoin::blockdata::block::BlockHash
impl core::marker::Sync for bitcoin::blockdata::block::Header
impl core::marker::Sync for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Sync for bitcoin::blockdata::block::ValidationError
impl core::marker::Sync for bitcoin::blockdata::block::Version
impl core::marker::Sync for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Sync for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Sync for bitcoin::blockdata::constants::ChainHash
impl core::marker::Sync for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Sync for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3420,6 +3418,8 @@ impl core::marker::Sync for bitcoin::key::TweakedPublicKey
impl core::marker::Sync for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Sync for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Sync for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Sync for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Sync for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Sync for bitcoin::network::Network
impl core::marker::Sync for bitcoin::network::NetworkKind
impl core::marker::Sync for bitcoin::network::ParseNetworkError
@ -3561,11 +3561,9 @@ impl core::marker::Unpin for bitcoin::blockdata::block::Bip34Error
impl core::marker::Unpin for bitcoin::blockdata::block::Block
impl core::marker::Unpin for bitcoin::blockdata::block::BlockHash
impl core::marker::Unpin for bitcoin::blockdata::block::Header
impl core::marker::Unpin for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Unpin for bitcoin::blockdata::block::ValidationError
impl core::marker::Unpin for bitcoin::blockdata::block::Version
impl core::marker::Unpin for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Unpin for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Unpin for bitcoin::blockdata::constants::ChainHash
impl core::marker::Unpin for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Unpin for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3632,6 +3630,8 @@ impl core::marker::Unpin for bitcoin::key::TweakedPublicKey
impl core::marker::Unpin for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Unpin for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Unpin for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Unpin for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Unpin for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Unpin for bitcoin::network::Network
impl core::marker::Unpin for bitcoin::network::NetworkKind
impl core::marker::Unpin for bitcoin::network::ParseNetworkError
@ -3804,11 +3804,9 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Bip3
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Block
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::BlockHash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Header
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::TxMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::ValidationError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Version
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::WitnessCommitment
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::WitnessMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::constants::ChainHash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::locktime::absolute::LockTime
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3873,6 +3871,8 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::key::TweakedPublicKey
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::key::UncompressedPublicKeyError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::MerkleBlockError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::PartialMerkleTree
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::TxMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::WitnessMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::network::Network
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::network::NetworkKind
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::network::ParseNetworkError
@ -4011,11 +4011,9 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Bip34Er
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Block
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::BlockHash
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Header
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::TxMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::ValidationError
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Version
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::WitnessCommitment
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::WitnessMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::constants::ChainHash
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::locktime::absolute::LockTime
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -4080,6 +4078,8 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin::key::TweakedPublicKey
impl core::panic::unwind_safe::UnwindSafe for bitcoin::key::UncompressedPublicKeyError
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::MerkleBlockError
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::PartialMerkleTree
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::TxMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::WitnessMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::network::Network
impl core::panic::unwind_safe::UnwindSafe for bitcoin::network::NetworkKind
impl core::panic::unwind_safe::UnwindSafe for bitcoin::network::ParseNetworkError
@ -4191,9 +4191,7 @@ impl core::str::traits::FromStr for bitcoin::bip32::XKeyIdentifier
impl core::str::traits::FromStr for bitcoin::bip32::Xpriv
impl core::str::traits::FromStr for bitcoin::bip32::Xpub
impl core::str::traits::FromStr for bitcoin::blockdata::block::BlockHash
impl core::str::traits::FromStr for bitcoin::blockdata::block::TxMerkleNode
impl core::str::traits::FromStr for bitcoin::blockdata::block::WitnessCommitment
impl core::str::traits::FromStr for bitcoin::blockdata::block::WitnessMerkleNode
impl core::str::traits::FromStr for bitcoin::blockdata::constants::ChainHash
impl core::str::traits::FromStr for bitcoin::blockdata::locktime::absolute::LockTime
impl core::str::traits::FromStr for bitcoin::blockdata::script::ScriptHash
@ -4204,6 +4202,8 @@ impl core::str::traits::FromStr for bitcoin::blockdata::transaction::Sequence
impl core::str::traits::FromStr for bitcoin::blockdata::transaction::Txid
impl core::str::traits::FromStr for bitcoin::blockdata::transaction::Wtxid
impl core::str::traits::FromStr for bitcoin::ecdsa::Signature
impl core::str::traits::FromStr for bitcoin::merkle_tree::TxMerkleNode
impl core::str::traits::FromStr for bitcoin::merkle_tree::WitnessMerkleNode
impl core::str::traits::FromStr for bitcoin::network::Network
impl core::str::traits::FromStr for bitcoin::p2p::Magic
impl core::str::traits::FromStr for bitcoin::p2p::message::CommandString
@ -4238,10 +4238,8 @@ impl serde::ser::Serialize for bitcoin::bip32::Xpub
impl serde::ser::Serialize for bitcoin::blockdata::block::Block
impl serde::ser::Serialize for bitcoin::blockdata::block::BlockHash
impl serde::ser::Serialize for bitcoin::blockdata::block::Header
impl serde::ser::Serialize for bitcoin::blockdata::block::TxMerkleNode
impl serde::ser::Serialize for bitcoin::blockdata::block::Version
impl serde::ser::Serialize for bitcoin::blockdata::block::WitnessCommitment
impl serde::ser::Serialize for bitcoin::blockdata::block::WitnessMerkleNode
impl serde::ser::Serialize for bitcoin::blockdata::constants::ChainHash
impl serde::ser::Serialize for bitcoin::blockdata::locktime::absolute::LockTime
impl serde::ser::Serialize for bitcoin::blockdata::locktime::relative::LockTime
@ -4262,6 +4260,8 @@ impl serde::ser::Serialize for bitcoin::blockdata::witness::Witness
impl serde::ser::Serialize for bitcoin::ecdsa::Signature
impl serde::ser::Serialize for bitcoin::key::TweakedKeypair
impl serde::ser::Serialize for bitcoin::key::TweakedPublicKey
impl serde::ser::Serialize for bitcoin::merkle_tree::TxMerkleNode
impl serde::ser::Serialize for bitcoin::merkle_tree::WitnessMerkleNode
impl serde::ser::Serialize for bitcoin::network::Network
impl serde::ser::Serialize for bitcoin::pow::CompactTarget
impl serde::ser::Serialize for bitcoin::pow::Target
@ -4682,10 +4682,8 @@ impl<'de> serde::de::Deserialize<'de> for bitcoin::bip32::Xpub
impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::block::Block
impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::block::BlockHash
impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::block::Header
impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::block::TxMerkleNode
impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::block::Version
impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::block::WitnessCommitment
impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::block::WitnessMerkleNode
impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::constants::ChainHash
impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::locktime::absolute::LockTime
impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::locktime::relative::LockTime
@ -4704,6 +4702,8 @@ impl<'de> serde::de::Deserialize<'de> for bitcoin::blockdata::witness::Witness
impl<'de> serde::de::Deserialize<'de> for bitcoin::ecdsa::Signature
impl<'de> serde::de::Deserialize<'de> for bitcoin::key::TweakedKeypair
impl<'de> serde::de::Deserialize<'de> for bitcoin::key::TweakedPublicKey
impl<'de> serde::de::Deserialize<'de> for bitcoin::merkle_tree::TxMerkleNode
impl<'de> serde::de::Deserialize<'de> for bitcoin::merkle_tree::WitnessMerkleNode
impl<'de> serde::de::Deserialize<'de> for bitcoin::network::Network
impl<'de> serde::de::Deserialize<'de> for bitcoin::pow::CompactTarget
impl<'de> serde::de::Deserialize<'de> for bitcoin::pow::Target
@ -4843,13 +4843,13 @@ impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bit
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::bip158::FilterHeader
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::bip32::XKeyIdentifier
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::BlockHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::TxMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::WitnessCommitment
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::WitnessMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::script::ScriptHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::script::WScriptHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::transaction::Txid
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::transaction::Wtxid
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::merkle_tree::TxMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::merkle_tree::WitnessMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::taproot::TapLeafHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::taproot::TapNodeHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::taproot::TapTweakHash
@ -5083,7 +5083,7 @@ pub bitcoin::block::Bip34Error::Unsupported
pub bitcoin::block::Block::header: bitcoin::blockdata::block::Header
pub bitcoin::block::Block::txdata: alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
pub bitcoin::block::Header::bits: bitcoin::pow::CompactTarget
pub bitcoin::block::Header::merkle_root: bitcoin::blockdata::block::TxMerkleNode
pub bitcoin::block::Header::merkle_root: bitcoin::merkle_tree::TxMerkleNode
pub bitcoin::block::Header::nonce: u32
pub bitcoin::block::Header::prev_blockhash: bitcoin::blockdata::block::BlockHash
pub bitcoin::block::Header::time: u32
@ -5097,7 +5097,7 @@ pub bitcoin::blockdata::block::Bip34Error::Unsupported
pub bitcoin::blockdata::block::Block::header: bitcoin::blockdata::block::Header
pub bitcoin::blockdata::block::Block::txdata: alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
pub bitcoin::blockdata::block::Header::bits: bitcoin::pow::CompactTarget
pub bitcoin::blockdata::block::Header::merkle_root: bitcoin::blockdata::block::TxMerkleNode
pub bitcoin::blockdata::block::Header::merkle_root: bitcoin::merkle_tree::TxMerkleNode
pub bitcoin::blockdata::block::Header::nonce: u32
pub bitcoin::blockdata::block::Header::prev_blockhash: bitcoin::blockdata::block::BlockHash
pub bitcoin::blockdata::block::Header::time: u32
@ -5718,18 +5718,12 @@ pub const bitcoin::blockdata::block::BlockHash::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::BlockHash::LEN: usize
pub const bitcoin::blockdata::block::BlockHash::N: usize
pub const bitcoin::blockdata::block::Header::SIZE: usize
pub const bitcoin::blockdata::block::TxMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::TxMerkleNode::LEN: usize
pub const bitcoin::blockdata::block::TxMerkleNode::N: usize
pub const bitcoin::blockdata::block::Version::NO_SOFT_FORK_SIGNALLING: Self
pub const bitcoin::blockdata::block::Version::ONE: Self
pub const bitcoin::blockdata::block::Version::TWO: Self
pub const bitcoin::blockdata::block::WitnessCommitment::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::WitnessCommitment::LEN: usize
pub const bitcoin::blockdata::block::WitnessCommitment::N: usize
pub const bitcoin::blockdata::block::WitnessMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::WitnessMerkleNode::LEN: usize
pub const bitcoin::blockdata::block::WitnessMerkleNode::N: usize
pub const bitcoin::blockdata::constants::COINBASE_MATURITY: u32 = 100u32
pub const bitcoin::blockdata::constants::ChainHash::BITCOIN: Self
pub const bitcoin::blockdata::constants::ChainHash::REGTEST: Self
@ -6057,6 +6051,12 @@ pub const bitcoin::constants::SCRIPT_ADDRESS_PREFIX_TEST: u8 = 196u8
pub const bitcoin::constants::SUBSIDY_HALVING_INTERVAL: u32 = 210_000u32
pub const bitcoin::constants::TARGET_BLOCK_SPACING: u32 = 600u32
pub const bitcoin::constants::WITNESS_SCALE_FACTOR: units::weight::WITNESS_SCALE_FACTOR
pub const bitcoin::merkle_tree::TxMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::merkle_tree::TxMerkleNode::LEN: usize
pub const bitcoin::merkle_tree::TxMerkleNode::N: usize
pub const bitcoin::merkle_tree::WitnessMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::merkle_tree::WitnessMerkleNode::LEN: usize
pub const bitcoin::merkle_tree::WitnessMerkleNode::N: usize
pub const bitcoin::opcodes::all::OP_0NOTEQUAL: _
pub const bitcoin::opcodes::all::OP_1ADD: _
pub const bitcoin::opcodes::all::OP_1SUB: _
@ -6840,8 +6840,6 @@ pub fn alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>::consensus_decode_f
pub fn alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::Header>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::Header>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::TxIn>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
@ -6850,6 +6848,8 @@ pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>::consensus_decode
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::consensus::encode::VarInt>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::consensus::encode::VarInt>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::p2p::address::AddrV2Message>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::p2p::address::AddrV2Message>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::p2p::message_blockdata::Inventory>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
@ -7613,8 +7613,8 @@ pub fn bitcoin::blockdata::block::Block::check_merkle_root(&self) -> bool
pub fn bitcoin::blockdata::block::Block::check_witness_commitment(&self) -> bool
pub fn bitcoin::blockdata::block::Block::clone(&self) -> bitcoin::blockdata::block::Block
pub fn bitcoin::blockdata::block::Block::coinbase(&self) -> core::option::Option<&bitcoin::blockdata::transaction::Transaction>
pub fn bitcoin::blockdata::block::Block::compute_merkle_root(&self) -> core::option::Option<bitcoin::blockdata::block::TxMerkleNode>
pub fn bitcoin::blockdata::block::Block::compute_witness_commitment(witness_root: &bitcoin::blockdata::block::WitnessMerkleNode, witness_reserved_value: &[u8]) -> bitcoin::blockdata::block::WitnessCommitment
pub fn bitcoin::blockdata::block::Block::compute_merkle_root(&self) -> core::option::Option<bitcoin::merkle_tree::TxMerkleNode>
pub fn bitcoin::blockdata::block::Block::compute_witness_commitment(witness_root: &bitcoin::merkle_tree::WitnessMerkleNode, witness_reserved_value: &[u8]) -> bitcoin::blockdata::block::WitnessCommitment
pub fn bitcoin::blockdata::block::Block::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<bitcoin::blockdata::block::Block, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::Block::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<bitcoin::blockdata::block::Block, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::Block::consensus_encode<R: bitcoin_io::Write + core::marker::Sized>(&self, r: &mut R) -> core::result::Result<usize, bitcoin_io::error::Error>
@ -7624,7 +7624,7 @@ pub fn bitcoin::blockdata::block::Block::fmt(&self, f: &mut core::fmt::Formatter
pub fn bitcoin::blockdata::block::Block::serialize<__S>(&self, __serializer: __S) -> core::result::Result<<__S as serde::ser::Serializer>::Ok, <__S as serde::ser::Serializer>::Error> where __S: serde::ser::Serializer
pub fn bitcoin::blockdata::block::Block::total_size(&self) -> usize
pub fn bitcoin::blockdata::block::Block::weight(&self) -> bitcoin_units::weight::Weight
pub fn bitcoin::blockdata::block::Block::witness_root(&self) -> core::option::Option<bitcoin::blockdata::block::WitnessMerkleNode>
pub fn bitcoin::blockdata::block::Block::witness_root(&self) -> core::option::Option<bitcoin::merkle_tree::WitnessMerkleNode>
pub fn bitcoin::blockdata::block::BlockHash::all_zeros() -> Self
pub fn bitcoin::blockdata::block::BlockHash::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::BlockHash::as_byte_array(&self) -> &Self::Bytes
@ -7679,40 +7679,6 @@ pub fn bitcoin::blockdata::block::Header::serialize<__S>(&self, __serializer: __
pub fn bitcoin::blockdata::block::Header::target(&self) -> bitcoin::pow::Target
pub fn bitcoin::blockdata::block::Header::validate_pow(&self, required_target: bitcoin::pow::Target) -> core::result::Result<bitcoin::blockdata::block::BlockHash, bitcoin::blockdata::block::ValidationError>
pub fn bitcoin::blockdata::block::Header::work(&self) -> bitcoin::pow::Work
pub fn bitcoin::blockdata::block::TxMerkleNode::all_zeros() -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::TxMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::blockdata::block::TxMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::blockdata::block::TxMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::blockdata::block::TxMerkleNode::clone(&self) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::cmp(&self, other: &bitcoin::blockdata::block::TxMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::blockdata::block::TxMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::TxMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::blockdata::block::TxMerkleNode::deserialize<D: serde::de::Deserializer<'de>>(d: D) -> core::result::Result<bitcoin::blockdata::block::TxMerkleNode, <D as serde::de::Deserializer>::Error>
pub fn bitcoin::blockdata::block::TxMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::blockdata::block::TxMerkleNode::eq(&self, other: &bitcoin::blockdata::block::TxMerkleNode) -> bool
pub fn bitcoin::blockdata::block::TxMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::blockdata::block::TxMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::from(txid: bitcoin::blockdata::transaction::Txid) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::blockdata::block::TxMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::blockdata::block::TxMerkleNode::from_slice_delegated(sl: &[u8]) -> core::result::Result<Self, bitcoin_hashes::FromSliceError>
pub fn bitcoin::blockdata::block::TxMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::blockdata::block::TxMerkleNode, Self::Err>
pub fn bitcoin::blockdata::block::TxMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::blockdata::block::TxMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::blockdata::block::TxMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::blockdata::block::TxMerkleNode::partial_cmp(&self, other: &bitcoin::blockdata::block::TxMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::blockdata::block::TxMerkleNode::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::blockdata::block::TxMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::ValidationError::clone(&self) -> bitcoin::blockdata::block::ValidationError
pub fn bitcoin::blockdata::block::ValidationError::eq(&self, other: &bitcoin::blockdata::block::ValidationError) -> bool
pub fn bitcoin::blockdata::block::ValidationError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
@ -7762,40 +7728,6 @@ pub fn bitcoin::blockdata::block::WitnessCommitment::serialize<S: serde::ser::Se
pub fn bitcoin::blockdata::block::WitnessCommitment::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::WitnessCommitment::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::blockdata::block::WitnessCommitment::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::WitnessMerkleNode::all_zeros() -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::blockdata::block::WitnessMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::blockdata::block::WitnessMerkleNode::clone(&self) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::cmp(&self, other: &bitcoin::blockdata::block::WitnessMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::blockdata::block::WitnessMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::deserialize<D: serde::de::Deserializer<'de>>(d: D) -> core::result::Result<bitcoin::blockdata::block::WitnessMerkleNode, <D as serde::de::Deserializer>::Error>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::blockdata::block::WitnessMerkleNode::eq(&self, other: &bitcoin::blockdata::block::WitnessMerkleNode) -> bool
pub fn bitcoin::blockdata::block::WitnessMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from(wtxid: bitcoin::blockdata::transaction::Wtxid) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::blockdata::block::WitnessMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_slice_delegated(sl: &[u8]) -> core::result::Result<Self, bitcoin_hashes::FromSliceError>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::blockdata::block::WitnessMerkleNode, Self::Err>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::blockdata::block::WitnessMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::blockdata::block::WitnessMerkleNode::partial_cmp(&self, other: &bitcoin::blockdata::block::WitnessMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::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::blockdata::block::WitnessMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::constants::ChainHash::as_byte_array(&self) -> &[u8; 32]
pub fn bitcoin::blockdata::constants::ChainHash::as_bytes(&self) -> &[u8]
pub fn bitcoin::blockdata::constants::ChainHash::as_mut(&mut self) -> &mut [u8; 32]
@ -8905,18 +8837,89 @@ pub fn bitcoin::merkle_tree::MerkleBlockError::eq(&self, other: &bitcoin::merkle
pub fn bitcoin::merkle_tree::MerkleBlockError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::MerkleBlockError::from(never: core::convert::Infallible) -> Self
pub fn bitcoin::merkle_tree::MerkleBlockError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
pub fn bitcoin::merkle_tree::MerkleNode::calculate_root<I: core::iter::traits::iterator::Iterator<Item = Self::Leaf>>(iter: I) -> core::option::Option<Self>
pub fn bitcoin::merkle_tree::MerkleNode::combine(&self, other: &Self) -> Self
pub fn bitcoin::merkle_tree::MerkleNode::from_leaf(leaf: Self::Leaf) -> Self
pub fn bitcoin::merkle_tree::PartialMerkleTree::bits(&self) -> &alloc::vec::Vec<bool>
pub fn bitcoin::merkle_tree::PartialMerkleTree::clone(&self) -> bitcoin::merkle_tree::PartialMerkleTree
pub fn bitcoin::merkle_tree::PartialMerkleTree::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::merkle_tree::PartialMerkleTree::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::merkle_tree::PartialMerkleTree::eq(&self, other: &bitcoin::merkle_tree::PartialMerkleTree) -> bool
pub fn bitcoin::merkle_tree::PartialMerkleTree::extract_matches(&self, matches: &mut alloc::vec::Vec<bitcoin::blockdata::transaction::Txid>, indexes: &mut alloc::vec::Vec<u32>) -> core::result::Result<bitcoin::blockdata::block::TxMerkleNode, bitcoin::merkle_tree::MerkleBlockError>
pub fn bitcoin::merkle_tree::PartialMerkleTree::extract_matches(&self, matches: &mut alloc::vec::Vec<bitcoin::blockdata::transaction::Txid>, indexes: &mut alloc::vec::Vec<u32>) -> core::result::Result<bitcoin::merkle_tree::TxMerkleNode, bitcoin::merkle_tree::MerkleBlockError>
pub fn bitcoin::merkle_tree::PartialMerkleTree::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::PartialMerkleTree::from_txids(txids: &[bitcoin::blockdata::transaction::Txid], matches: &[bool]) -> Self
pub fn bitcoin::merkle_tree::PartialMerkleTree::hashes(&self) -> &alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>
pub fn bitcoin::merkle_tree::PartialMerkleTree::hashes(&self) -> &alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>
pub fn bitcoin::merkle_tree::PartialMerkleTree::num_transactions(&self) -> u32
pub fn bitcoin::merkle_tree::calculate_root<T, I>(hashes: I) -> core::option::Option<T> where T: bitcoin_hashes::Hash + bitcoin::consensus::encode::Encodable, <T as bitcoin_hashes::Hash>::Engine: bitcoin_io::Write, I: core::iter::traits::iterator::Iterator<Item = T>
pub fn bitcoin::merkle_tree::calculate_root_inline<T>(hashes: &mut [T]) -> core::option::Option<T> where T: bitcoin_hashes::Hash + bitcoin::consensus::encode::Encodable, <T as bitcoin_hashes::Hash>::Engine: bitcoin_io::Write
pub fn bitcoin::merkle_tree::TxMerkleNode::all_zeros() -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::merkle_tree::TxMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::merkle_tree::TxMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::merkle_tree::TxMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::merkle_tree::TxMerkleNode::clone(&self) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::cmp(&self, other: &bitcoin::merkle_tree::TxMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::merkle_tree::TxMerkleNode::combine(&self, other: &Self) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::merkle_tree::TxMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::merkle_tree::TxMerkleNode::deserialize<D: serde::de::Deserializer<'de>>(d: D) -> core::result::Result<bitcoin::merkle_tree::TxMerkleNode, <D as serde::de::Deserializer>::Error>
pub fn bitcoin::merkle_tree::TxMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::merkle_tree::TxMerkleNode::eq(&self, other: &bitcoin::merkle_tree::TxMerkleNode) -> bool
pub fn bitcoin::merkle_tree::TxMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::TxMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::from_leaf(leaf: Self::Leaf) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::merkle_tree::TxMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::merkle_tree::TxMerkleNode::from_slice_delegated(sl: &[u8]) -> core::result::Result<Self, bitcoin_hashes::FromSliceError>
pub fn bitcoin::merkle_tree::TxMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::merkle_tree::TxMerkleNode, Self::Err>
pub fn bitcoin::merkle_tree::TxMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::merkle_tree::TxMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::merkle_tree::TxMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::merkle_tree::TxMerkleNode::partial_cmp(&self, other: &bitcoin::merkle_tree::TxMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::merkle_tree::TxMerkleNode::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::merkle_tree::TxMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::merkle_tree::WitnessMerkleNode::all_zeros() -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::merkle_tree::WitnessMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::merkle_tree::WitnessMerkleNode::clone(&self) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::cmp(&self, other: &bitcoin::merkle_tree::WitnessMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::merkle_tree::WitnessMerkleNode::combine(&self, other: &Self) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::deserialize<D: serde::de::Deserializer<'de>>(d: D) -> core::result::Result<bitcoin::merkle_tree::WitnessMerkleNode, <D as serde::de::Deserializer>::Error>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::merkle_tree::WitnessMerkleNode::eq(&self, other: &bitcoin::merkle_tree::WitnessMerkleNode) -> bool
pub fn bitcoin::merkle_tree::WitnessMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_leaf(leaf: Self::Leaf) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::merkle_tree::WitnessMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_slice_delegated(sl: &[u8]) -> core::result::Result<Self, bitcoin_hashes::FromSliceError>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::merkle_tree::WitnessMerkleNode, Self::Err>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::merkle_tree::WitnessMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::merkle_tree::WitnessMerkleNode::partial_cmp(&self, other: &bitcoin::merkle_tree::WitnessMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::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::merkle_tree::WitnessMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::network::Network::as_ref(&self) -> &bitcoin::consensus::params::Params
pub fn bitcoin::network::Network::chain_hash(self) -> bitcoin::blockdata::constants::ChainHash
pub fn bitcoin::network::Network::clone(&self) -> bitcoin::network::Network
@ -10009,11 +10012,11 @@ pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::SegwitV0Sighash) -
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::bip158::FilterHash) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::bip158::FilterHeader) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::BlockHash) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::TxMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::WitnessCommitment) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::WitnessMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::transaction::Txid) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::transaction::Wtxid) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::merkle_tree::TxMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::merkle_tree::WitnessMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256t::Hash<bitcoin::TapSighashTag>::from(hashtype: bitcoin::TapSighash) -> bitcoin_hashes::sha256t::Hash<bitcoin::TapSighashTag>
pub fn bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapBranchTag>::from(hashtype: bitcoin::taproot::TapNodeHash) -> bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapBranchTag>
pub fn bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapLeafTag>::from(hashtype: bitcoin::taproot::TapLeafHash) -> bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapLeafTag>
@ -10218,17 +10221,13 @@ pub struct bitcoin::bip32::Xpub
pub struct bitcoin::block::Block
pub struct bitcoin::block::BlockHash(_)
pub struct bitcoin::block::Header
pub struct bitcoin::block::TxMerkleNode(_)
pub struct bitcoin::block::Version(_)
pub struct bitcoin::block::WitnessCommitment(_)
pub struct bitcoin::block::WitnessMerkleNode(_)
pub struct bitcoin::blockdata::block::Block
pub struct bitcoin::blockdata::block::BlockHash(_)
pub struct bitcoin::blockdata::block::Header
pub struct bitcoin::blockdata::block::TxMerkleNode(_)
pub struct bitcoin::blockdata::block::Version(_)
pub struct bitcoin::blockdata::block::WitnessCommitment(_)
pub struct bitcoin::blockdata::block::WitnessMerkleNode(_)
pub struct bitcoin::blockdata::constants::ChainHash(_)
pub struct bitcoin::blockdata::locktime::relative::DisabledLockTimeError(_)
pub struct bitcoin::blockdata::opcodes::Opcode
@ -10290,6 +10289,8 @@ pub struct bitcoin::key::WPubkeyHash(_)
pub struct bitcoin::locktime::relative::DisabledLockTimeError(_)
pub struct bitcoin::merkle_tree::MerkleBlock
pub struct bitcoin::merkle_tree::PartialMerkleTree
pub struct bitcoin::merkle_tree::TxMerkleNode(_)
pub struct bitcoin::merkle_tree::WitnessMerkleNode(_)
pub struct bitcoin::opcodes::Opcode
pub struct bitcoin::p2p::Address
pub struct bitcoin::p2p::Magic(_)
@ -10402,6 +10403,7 @@ pub trait bitcoin::consensus::serde::EncodeBytes
pub trait bitcoin::consensus::serde::IntoDeError
pub trait bitcoin::consensus::serde::hex::Case: sealed::Case
pub trait bitcoin::key::TapTweak
pub trait bitcoin::merkle_tree::MerkleNode: core::marker::Copy
pub trait bitcoin::psbt::GetKey
pub trait bitcoin::script::PushBytesErrorReport
pub type &'a bitcoin::bip32::DerivationPath::IntoIter = core::slice::iter::Iter<'a, bitcoin::bip32::ChildNumber>
@ -10484,18 +10486,10 @@ pub type bitcoin::blockdata::block::BlockHash::Bytes = <bitcoin_hashes::sha256d:
pub type bitcoin::blockdata::block::BlockHash::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::BlockHash::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::BlockHash::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::block::TxMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::blockdata::block::TxMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::TxMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::TxMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::block::WitnessCommitment::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::blockdata::block::WitnessCommitment::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::WitnessCommitment::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::WitnessCommitment::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::block::WitnessMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::blockdata::block::WitnessMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::WitnessMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::WitnessMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::constants::ChainHash::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::constants::ChainHash::Error = core::array::TryFromSliceError
pub type bitcoin::blockdata::constants::ChainHash::Output = <[u8] as core::ops::index::Index<I>>::Output
@ -10558,6 +10552,17 @@ pub type bitcoin::key::UntweakedKeypair::TweakedKey = bitcoin::key::TweakedKeypa
pub type bitcoin::key::UntweakedPublicKey = secp256k1::key::XOnlyPublicKey
pub type bitcoin::key::UntweakedPublicKey::TweakedAux = (bitcoin::key::TweakedPublicKey, secp256k1::key::Parity)
pub type bitcoin::key::UntweakedPublicKey::TweakedKey = bitcoin::key::TweakedPublicKey
pub type bitcoin::merkle_tree::MerkleNode::Leaf
pub type bitcoin::merkle_tree::TxMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::merkle_tree::TxMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::merkle_tree::TxMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::merkle_tree::TxMerkleNode::Leaf = bitcoin::blockdata::transaction::Txid
pub type bitcoin::merkle_tree::TxMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::merkle_tree::WitnessMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::merkle_tree::WitnessMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::merkle_tree::WitnessMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::merkle_tree::WitnessMerkleNode::Leaf = bitcoin::blockdata::transaction::Wtxid
pub type bitcoin::merkle_tree::WitnessMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::network::Network::Err = bitcoin::network::ParseNetworkError
pub type bitcoin::network::Network::Error = bitcoin::network::UnknownChainHashError
pub type bitcoin::network::Network::Error = bitcoin::p2p::UnknownMagicError

View File

@ -138,10 +138,8 @@ impl bitcoin::bip32::Xpub
impl bitcoin::blockdata::block::Block
impl bitcoin::blockdata::block::BlockHash
impl bitcoin::blockdata::block::Header
impl bitcoin::blockdata::block::TxMerkleNode
impl bitcoin::blockdata::block::Version
impl bitcoin::blockdata::block::WitnessCommitment
impl bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin::blockdata::constants::ChainHash
impl bitcoin::blockdata::locktime::absolute::LockTime
impl bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -191,11 +189,11 @@ impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::bip158::
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::bip158::FilterHeader>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::block::Header>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxIn>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::consensus::encode::VarInt>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::p2p::address::AddrV2Message>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::p2p::message_blockdata::Inventory>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::taproot::TapLeafHash>
@ -212,9 +210,7 @@ impl bitcoin::consensus::encode::Decodable for bitcoin::bip158::FilterHeader
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::Block
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::BlockHash
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::Header
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::TxMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::Version
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::locktime::absolute::LockTime
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::script::ScriptBuf
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::transaction::OutPoint
@ -229,6 +225,8 @@ impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::witness::Witn
impl bitcoin::consensus::encode::Decodable for bitcoin::consensus::encode::CheckedData
impl bitcoin::consensus::encode::Decodable for bitcoin::consensus::encode::VarInt
impl bitcoin::consensus::encode::Decodable for bitcoin::merkle_tree::PartialMerkleTree
impl bitcoin::consensus::encode::Decodable for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::p2p::Magic
impl bitcoin::consensus::encode::Decodable for bitcoin::p2p::ServiceFlags
impl bitcoin::consensus::encode::Decodable for bitcoin::p2p::address::AddrV2
@ -292,11 +290,11 @@ impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::bip158::
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::bip158::FilterHeader>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::block::Header>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxIn>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::consensus::encode::VarInt>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::p2p::address::AddrV2Message>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::p2p::message_blockdata::Inventory>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::taproot::TapLeafHash>
@ -313,9 +311,7 @@ impl bitcoin::consensus::encode::Encodable for bitcoin::bip158::FilterHeader
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::Block
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::BlockHash
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::Header
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::TxMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::Version
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::locktime::absolute::LockTime
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::script::Script
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::script::ScriptBuf
@ -331,6 +327,8 @@ impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::witness::Witn
impl bitcoin::consensus::encode::Encodable for bitcoin::consensus::encode::CheckedData
impl bitcoin::consensus::encode::Encodable for bitcoin::consensus::encode::VarInt
impl bitcoin::consensus::encode::Encodable for bitcoin::merkle_tree::PartialMerkleTree
impl bitcoin::consensus::encode::Encodable for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::p2p::Magic
impl bitcoin::consensus::encode::Encodable for bitcoin::p2p::ServiceFlags
impl bitcoin::consensus::encode::Encodable for bitcoin::p2p::address::AddrV2
@ -384,7 +382,11 @@ impl bitcoin::key::TapTweak for bitcoin::key::UntweakedKeypair
impl bitcoin::key::TapTweak for bitcoin::key::UntweakedPublicKey
impl bitcoin::key::TweakedKeypair
impl bitcoin::key::TweakedPublicKey
impl bitcoin::merkle_tree::MerkleNode for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::merkle_tree::MerkleNode for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::merkle_tree::PartialMerkleTree
impl bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::network::Network
impl bitcoin::network::NetworkKind
impl bitcoin::p2p::Magic
@ -440,13 +442,13 @@ impl bitcoin_hashes::Hash for bitcoin::bip158::FilterHash
impl bitcoin_hashes::Hash for bitcoin::bip158::FilterHeader
impl bitcoin_hashes::Hash for bitcoin::bip32::XKeyIdentifier
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::BlockHash
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::TxMerkleNode
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::WitnessCommitment
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin_hashes::Hash for bitcoin::blockdata::script::ScriptHash
impl bitcoin_hashes::Hash for bitcoin::blockdata::script::WScriptHash
impl bitcoin_hashes::Hash for bitcoin::blockdata::transaction::Txid
impl bitcoin_hashes::Hash for bitcoin::blockdata::transaction::Wtxid
impl bitcoin_hashes::Hash for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin_hashes::Hash for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin_hashes::Hash for bitcoin::taproot::TapLeafHash
impl bitcoin_hashes::Hash for bitcoin::taproot::TapNodeHash
impl bitcoin_hashes::Hash for bitcoin::taproot::TapTweakHash
@ -472,15 +474,15 @@ impl core::borrow::Borrow<[u8]> for bitcoin::bip32::ChainCode
impl core::borrow::Borrow<[u8]> for bitcoin::bip32::Fingerprint
impl core::borrow::Borrow<[u8]> for bitcoin::bip32::XKeyIdentifier
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::BlockHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::TxMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::WitnessCommitment
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::constants::ChainHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::script::ScriptHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::script::WScriptHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::transaction::Txid
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::transaction::Wtxid
impl core::borrow::Borrow<[u8]> for bitcoin::ecdsa::SerializedSignature
impl core::borrow::Borrow<[u8]> for bitcoin::merkle_tree::TxMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::p2p::Magic
impl core::borrow::Borrow<[u8]> for bitcoin::taproot::TapLeafHash
impl core::borrow::Borrow<[u8]> for bitcoin::taproot::TapNodeHash
@ -550,11 +552,9 @@ impl core::clone::Clone for bitcoin::blockdata::block::Bip34Error
impl core::clone::Clone for bitcoin::blockdata::block::Block
impl core::clone::Clone for bitcoin::blockdata::block::BlockHash
impl core::clone::Clone for bitcoin::blockdata::block::Header
impl core::clone::Clone for bitcoin::blockdata::block::TxMerkleNode
impl core::clone::Clone for bitcoin::blockdata::block::ValidationError
impl core::clone::Clone for bitcoin::blockdata::block::Version
impl core::clone::Clone for bitcoin::blockdata::block::WitnessCommitment
impl core::clone::Clone for bitcoin::blockdata::block::WitnessMerkleNode
impl core::clone::Clone for bitcoin::blockdata::constants::ChainHash
impl core::clone::Clone for bitcoin::blockdata::locktime::absolute::LockTime
impl core::clone::Clone for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -611,6 +611,8 @@ impl core::clone::Clone for bitcoin::key::TweakedPublicKey
impl core::clone::Clone for bitcoin::key::UncompressedPublicKeyError
impl core::clone::Clone for bitcoin::merkle_tree::MerkleBlockError
impl core::clone::Clone for bitcoin::merkle_tree::PartialMerkleTree
impl core::clone::Clone for bitcoin::merkle_tree::TxMerkleNode
impl core::clone::Clone for bitcoin::merkle_tree::WitnessMerkleNode
impl core::clone::Clone for bitcoin::network::Network
impl core::clone::Clone for bitcoin::network::NetworkKind
impl core::clone::Clone for bitcoin::network::ParseNetworkError
@ -746,11 +748,9 @@ impl core::cmp::Eq for bitcoin::blockdata::block::Bip34Error
impl core::cmp::Eq for bitcoin::blockdata::block::Block
impl core::cmp::Eq for bitcoin::blockdata::block::BlockHash
impl core::cmp::Eq for bitcoin::blockdata::block::Header
impl core::cmp::Eq for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::Eq for bitcoin::blockdata::block::ValidationError
impl core::cmp::Eq for bitcoin::blockdata::block::Version
impl core::cmp::Eq for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::Eq for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::Eq for bitcoin::blockdata::constants::ChainHash
impl core::cmp::Eq for bitcoin::blockdata::locktime::absolute::LockTime
impl core::cmp::Eq for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -807,6 +807,8 @@ impl core::cmp::Eq for bitcoin::key::TweakedPublicKey
impl core::cmp::Eq for bitcoin::key::UncompressedPublicKeyError
impl core::cmp::Eq for bitcoin::merkle_tree::MerkleBlockError
impl core::cmp::Eq for bitcoin::merkle_tree::PartialMerkleTree
impl core::cmp::Eq for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::Eq for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::Eq for bitcoin::network::Network
impl core::cmp::Eq for bitcoin::network::NetworkKind
impl core::cmp::Eq for bitcoin::network::ParseNetworkError
@ -922,10 +924,8 @@ impl core::cmp::Ord for bitcoin::bip32::XKeyIdentifier
impl core::cmp::Ord for bitcoin::bip32::Xpub
impl core::cmp::Ord for bitcoin::blockdata::block::BlockHash
impl core::cmp::Ord for bitcoin::blockdata::block::Header
impl core::cmp::Ord for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::Ord for bitcoin::blockdata::block::Version
impl core::cmp::Ord for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::Ord for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::Ord for bitcoin::blockdata::constants::ChainHash
impl core::cmp::Ord for bitcoin::blockdata::opcodes::ClassifyContext
impl core::cmp::Ord for bitcoin::blockdata::script::PushBytes
@ -949,6 +949,8 @@ impl core::cmp::Ord for bitcoin::consensus::encode::VarInt
impl core::cmp::Ord for bitcoin::key::SortKey
impl core::cmp::Ord for bitcoin::key::TweakedKeypair
impl core::cmp::Ord for bitcoin::key::TweakedPublicKey
impl core::cmp::Ord for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::Ord for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::Ord for bitcoin::network::Network
impl core::cmp::Ord for bitcoin::network::NetworkKind
impl core::cmp::Ord for bitcoin::p2p::Magic
@ -1031,11 +1033,9 @@ impl core::cmp::PartialEq for bitcoin::blockdata::block::Bip34Error
impl core::cmp::PartialEq for bitcoin::blockdata::block::Block
impl core::cmp::PartialEq for bitcoin::blockdata::block::BlockHash
impl core::cmp::PartialEq for bitcoin::blockdata::block::Header
impl core::cmp::PartialEq for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::PartialEq for bitcoin::blockdata::block::ValidationError
impl core::cmp::PartialEq for bitcoin::blockdata::block::Version
impl core::cmp::PartialEq for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::PartialEq for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::PartialEq for bitcoin::blockdata::constants::ChainHash
impl core::cmp::PartialEq for bitcoin::blockdata::locktime::absolute::LockTime
impl core::cmp::PartialEq for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -1092,6 +1092,8 @@ impl core::cmp::PartialEq for bitcoin::key::TweakedPublicKey
impl core::cmp::PartialEq for bitcoin::key::UncompressedPublicKeyError
impl core::cmp::PartialEq for bitcoin::merkle_tree::MerkleBlockError
impl core::cmp::PartialEq for bitcoin::merkle_tree::PartialMerkleTree
impl core::cmp::PartialEq for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::PartialEq for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::PartialEq for bitcoin::network::Network
impl core::cmp::PartialEq for bitcoin::network::NetworkKind
impl core::cmp::PartialEq for bitcoin::network::ParseNetworkError
@ -1211,10 +1213,8 @@ impl core::cmp::PartialOrd for bitcoin::bip32::XKeyIdentifier
impl core::cmp::PartialOrd for bitcoin::bip32::Xpub
impl core::cmp::PartialOrd for bitcoin::blockdata::block::BlockHash
impl core::cmp::PartialOrd for bitcoin::blockdata::block::Header
impl core::cmp::PartialOrd for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::PartialOrd for bitcoin::blockdata::block::Version
impl core::cmp::PartialOrd for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::PartialOrd for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::PartialOrd for bitcoin::blockdata::constants::ChainHash
impl core::cmp::PartialOrd for bitcoin::blockdata::locktime::absolute::LockTime
impl core::cmp::PartialOrd for bitcoin::blockdata::locktime::relative::LockTime
@ -1240,6 +1240,8 @@ impl core::cmp::PartialOrd for bitcoin::consensus::encode::VarInt
impl core::cmp::PartialOrd for bitcoin::key::SortKey
impl core::cmp::PartialOrd for bitcoin::key::TweakedKeypair
impl core::cmp::PartialOrd for bitcoin::key::TweakedPublicKey
impl core::cmp::PartialOrd for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::PartialOrd for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::PartialOrd for bitcoin::network::Network
impl core::cmp::PartialOrd for bitcoin::network::NetworkKind
impl core::cmp::PartialOrd for bitcoin::p2p::Magic
@ -1385,13 +1387,13 @@ impl core::convert::AsRef<[u8; 32]> for bitcoin::bip158::FilterHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::bip158::FilterHeader
impl core::convert::AsRef<[u8; 32]> for bitcoin::bip32::ChainCode
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::BlockHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::WitnessCommitment
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::constants::ChainHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::script::WScriptHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::transaction::Txid
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::AsRef<[u8; 32]> for bitcoin::merkle_tree::TxMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::taproot::TapLeafHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::taproot::TapNodeHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::taproot::TapTweakHash
@ -1410,9 +1412,7 @@ impl core::convert::AsRef<[u8]> for bitcoin::bip32::ChainCode
impl core::convert::AsRef<[u8]> for bitcoin::bip32::Fingerprint
impl core::convert::AsRef<[u8]> for bitcoin::bip32::XKeyIdentifier
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::BlockHash
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::WitnessCommitment
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::constants::ChainHash
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::script::PushBytes
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::script::Script
@ -1422,6 +1422,8 @@ impl core::convert::AsRef<[u8]> for bitcoin::blockdata::script::WScriptHash
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::transaction::Txid
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::AsRef<[u8]> for bitcoin::ecdsa::SerializedSignature
impl core::convert::AsRef<[u8]> for bitcoin::merkle_tree::TxMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::p2p::Magic
impl core::convert::AsRef<[u8]> for bitcoin::taproot::TapLeafHash
impl core::convert::AsRef<[u8]> for bitcoin::taproot::TapNodeHash
@ -1776,9 +1778,7 @@ impl core::convert::From<bitcoin::bip32::Xpub> for bitcoin::bip32::XKeyIdentifie
impl core::convert::From<bitcoin::blockdata::block::Block> for bitcoin::blockdata::block::BlockHash
impl core::convert::From<bitcoin::blockdata::block::BlockHash> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::block::Header> for bitcoin::blockdata::block::BlockHash
impl core::convert::From<bitcoin::blockdata::block::TxMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::block::WitnessCommitment> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::block::WitnessMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::locktime::relative::LockTime> for bitcoin::blockdata::transaction::Sequence
impl core::convert::From<bitcoin::blockdata::script::PushBytesBuf> for alloc::vec::Vec<u8>
impl core::convert::From<bitcoin::blockdata::script::ScriptBuf> for alloc::borrow::Cow<'_, bitcoin::blockdata::script::Script>
@ -1803,9 +1803,7 @@ impl core::convert::From<bitcoin::blockdata::transaction::InputsIndexError> for
impl core::convert::From<bitcoin::blockdata::transaction::Sequence> for u32
impl core::convert::From<bitcoin::blockdata::transaction::Transaction> for bitcoin::blockdata::transaction::Txid
impl core::convert::From<bitcoin::blockdata::transaction::Transaction> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::From<bitcoin::blockdata::transaction::Txid> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::From<bitcoin::blockdata::transaction::Txid> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::transaction::Wtxid> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::From<bitcoin::blockdata::transaction::Wtxid> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::consensus::encode::Error> for bitcoin::psbt::Error
impl core::convert::From<bitcoin::key::FromSliceError> for bitcoin::key::ParsePublicKeyError
@ -1814,6 +1812,8 @@ impl core::convert::From<bitcoin::key::InvalidBase58PayloadLengthError> for bitc
impl core::convert::From<bitcoin::key::TweakedKeypair> for bitcoin::key::TweakedPublicKey
impl core::convert::From<bitcoin::key::TweakedKeypair> for secp256k1::key::Keypair
impl core::convert::From<bitcoin::key::TweakedPublicKey> for secp256k1::key::XOnlyPublicKey
impl core::convert::From<bitcoin::merkle_tree::TxMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::merkle_tree::WitnessMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::network::Network> for &'static bitcoin::consensus::params::Params
impl core::convert::From<bitcoin::network::Network> for bitcoin::address::KnownHrp
impl core::convert::From<bitcoin::network::Network> for bitcoin::consensus::params::Params
@ -1849,11 +1849,11 @@ impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::SegwitV0Sig
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::bip158::FilterHash
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::bip158::FilterHeader
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::BlockHash
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::WitnessCommitment
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::transaction::Txid
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::merkle_tree::TxMerkleNode
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::convert::From<bitcoin_hashes::sha256t::Hash<bitcoin::TapSighashTag>> for bitcoin::TapSighash
impl core::convert::From<bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapBranchTag>> for bitcoin::taproot::TapNodeHash
impl core::convert::From<bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapLeafTag>> for bitcoin::taproot::TapLeafHash
@ -2086,11 +2086,9 @@ impl core::fmt::Debug for bitcoin::blockdata::block::Bip34Error
impl core::fmt::Debug for bitcoin::blockdata::block::Block
impl core::fmt::Debug for bitcoin::blockdata::block::BlockHash
impl core::fmt::Debug for bitcoin::blockdata::block::Header
impl core::fmt::Debug for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::Debug for bitcoin::blockdata::block::ValidationError
impl core::fmt::Debug for bitcoin::blockdata::block::Version
impl core::fmt::Debug for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::Debug for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::Debug for bitcoin::blockdata::constants::ChainHash
impl core::fmt::Debug for bitcoin::blockdata::locktime::absolute::LockTime
impl core::fmt::Debug for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2151,6 +2149,8 @@ impl core::fmt::Debug for bitcoin::key::TweakedPublicKey
impl core::fmt::Debug for bitcoin::key::UncompressedPublicKeyError
impl core::fmt::Debug for bitcoin::merkle_tree::MerkleBlockError
impl core::fmt::Debug for bitcoin::merkle_tree::PartialMerkleTree
impl core::fmt::Debug for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::Debug for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::Debug for bitcoin::network::Network
impl core::fmt::Debug for bitcoin::network::NetworkKind
impl core::fmt::Debug for bitcoin::network::ParseNetworkError
@ -2274,10 +2274,8 @@ impl core::fmt::Display for bitcoin::bip32::Xpriv
impl core::fmt::Display for bitcoin::bip32::Xpub
impl core::fmt::Display for bitcoin::blockdata::block::Bip34Error
impl core::fmt::Display for bitcoin::blockdata::block::BlockHash
impl core::fmt::Display for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::Display for bitcoin::blockdata::block::ValidationError
impl core::fmt::Display for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::Display for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::Display for bitcoin::blockdata::constants::ChainHash
impl core::fmt::Display for bitcoin::blockdata::locktime::absolute::LockTime
impl core::fmt::Display for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2322,6 +2320,8 @@ impl core::fmt::Display for bitcoin::key::ParsePublicKeyError
impl core::fmt::Display for bitcoin::key::TweakedPublicKey
impl core::fmt::Display for bitcoin::key::UncompressedPublicKeyError
impl core::fmt::Display for bitcoin::merkle_tree::MerkleBlockError
impl core::fmt::Display for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::Display for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::Display for bitcoin::network::Network
impl core::fmt::Display for bitcoin::network::ParseNetworkError
impl core::fmt::Display for bitcoin::network::UnknownChainHashError
@ -2374,9 +2374,7 @@ impl core::fmt::LowerHex for bitcoin::bip32::ChainCode
impl core::fmt::LowerHex for bitcoin::bip32::Fingerprint
impl core::fmt::LowerHex for bitcoin::bip32::XKeyIdentifier
impl core::fmt::LowerHex for bitcoin::blockdata::block::BlockHash
impl core::fmt::LowerHex for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::LowerHex for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::LowerHex for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::LowerHex for bitcoin::blockdata::constants::ChainHash
impl core::fmt::LowerHex for bitcoin::blockdata::script::Script
impl core::fmt::LowerHex for bitcoin::blockdata::script::ScriptBuf
@ -2387,6 +2385,8 @@ impl core::fmt::LowerHex for bitcoin::blockdata::transaction::Txid
impl core::fmt::LowerHex for bitcoin::blockdata::transaction::Wtxid
impl core::fmt::LowerHex for bitcoin::ecdsa::SerializedSignature
impl core::fmt::LowerHex for bitcoin::key::TweakedPublicKey
impl core::fmt::LowerHex for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::LowerHex for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::LowerHex for bitcoin::p2p::Magic
impl core::fmt::LowerHex for bitcoin::p2p::ServiceFlags
impl core::fmt::LowerHex for bitcoin::pow::CompactTarget
@ -2409,9 +2409,7 @@ impl core::fmt::UpperHex for bitcoin::bip32::ChainCode
impl core::fmt::UpperHex for bitcoin::bip32::Fingerprint
impl core::fmt::UpperHex for bitcoin::bip32::XKeyIdentifier
impl core::fmt::UpperHex for bitcoin::blockdata::block::BlockHash
impl core::fmt::UpperHex for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::UpperHex for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::UpperHex for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::UpperHex for bitcoin::blockdata::constants::ChainHash
impl core::fmt::UpperHex for bitcoin::blockdata::script::Script
impl core::fmt::UpperHex for bitcoin::blockdata::script::ScriptBuf
@ -2421,6 +2419,8 @@ impl core::fmt::UpperHex for bitcoin::blockdata::transaction::Sequence
impl core::fmt::UpperHex for bitcoin::blockdata::transaction::Txid
impl core::fmt::UpperHex for bitcoin::blockdata::transaction::Wtxid
impl core::fmt::UpperHex for bitcoin::ecdsa::SerializedSignature
impl core::fmt::UpperHex for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::UpperHex for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::UpperHex for bitcoin::p2p::Magic
impl core::fmt::UpperHex for bitcoin::p2p::ServiceFlags
impl core::fmt::UpperHex for bitcoin::pow::CompactTarget
@ -2461,10 +2461,8 @@ impl core::hash::Hash for bitcoin::bip32::XKeyIdentifier
impl core::hash::Hash for bitcoin::bip32::Xpub
impl core::hash::Hash for bitcoin::blockdata::block::BlockHash
impl core::hash::Hash for bitcoin::blockdata::block::Header
impl core::hash::Hash for bitcoin::blockdata::block::TxMerkleNode
impl core::hash::Hash for bitcoin::blockdata::block::Version
impl core::hash::Hash for bitcoin::blockdata::block::WitnessCommitment
impl core::hash::Hash for bitcoin::blockdata::block::WitnessMerkleNode
impl core::hash::Hash for bitcoin::blockdata::constants::ChainHash
impl core::hash::Hash for bitcoin::blockdata::locktime::absolute::LockTime
impl core::hash::Hash for bitcoin::blockdata::locktime::relative::LockTime
@ -2491,6 +2489,8 @@ impl core::hash::Hash for bitcoin::ecdsa::Signature
impl core::hash::Hash for bitcoin::key::SortKey
impl core::hash::Hash for bitcoin::key::TweakedKeypair
impl core::hash::Hash for bitcoin::key::TweakedPublicKey
impl core::hash::Hash for bitcoin::merkle_tree::TxMerkleNode
impl core::hash::Hash for bitcoin::merkle_tree::WitnessMerkleNode
impl core::hash::Hash for bitcoin::network::Network
impl core::hash::Hash for bitcoin::network::NetworkKind
impl core::hash::Hash for bitcoin::p2p::Magic
@ -2571,10 +2571,8 @@ impl core::marker::Copy for bitcoin::bip32::Xpriv
impl core::marker::Copy for bitcoin::bip32::Xpub
impl core::marker::Copy for bitcoin::blockdata::block::BlockHash
impl core::marker::Copy for bitcoin::blockdata::block::Header
impl core::marker::Copy for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Copy for bitcoin::blockdata::block::Version
impl core::marker::Copy for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Copy for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Copy for bitcoin::blockdata::constants::ChainHash
impl core::marker::Copy for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Copy for bitcoin::blockdata::locktime::relative::LockTime
@ -2597,6 +2595,8 @@ impl core::marker::Copy for bitcoin::ecdsa::Signature
impl core::marker::Copy for bitcoin::key::SortKey
impl core::marker::Copy for bitcoin::key::TweakedKeypair
impl core::marker::Copy for bitcoin::key::TweakedPublicKey
impl core::marker::Copy for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Copy for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Copy for bitcoin::network::Network
impl core::marker::Copy for bitcoin::network::NetworkKind
impl core::marker::Copy for bitcoin::p2p::Magic
@ -2673,11 +2673,9 @@ impl core::marker::Freeze for bitcoin::blockdata::block::Bip34Error
impl core::marker::Freeze for bitcoin::blockdata::block::Block
impl core::marker::Freeze for bitcoin::blockdata::block::BlockHash
impl core::marker::Freeze for bitcoin::blockdata::block::Header
impl core::marker::Freeze for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Freeze for bitcoin::blockdata::block::ValidationError
impl core::marker::Freeze for bitcoin::blockdata::block::Version
impl core::marker::Freeze for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Freeze for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Freeze for bitcoin::blockdata::constants::ChainHash
impl core::marker::Freeze for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Freeze for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2738,6 +2736,8 @@ impl core::marker::Freeze for bitcoin::key::TweakedPublicKey
impl core::marker::Freeze for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Freeze for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Freeze for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Freeze for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Freeze for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Freeze for bitcoin::network::Network
impl core::marker::Freeze for bitcoin::network::NetworkKind
impl core::marker::Freeze for bitcoin::network::ParseNetworkError
@ -2878,11 +2878,9 @@ impl core::marker::Send for bitcoin::blockdata::block::Bip34Error
impl core::marker::Send for bitcoin::blockdata::block::Block
impl core::marker::Send for bitcoin::blockdata::block::BlockHash
impl core::marker::Send for bitcoin::blockdata::block::Header
impl core::marker::Send for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Send for bitcoin::blockdata::block::ValidationError
impl core::marker::Send for bitcoin::blockdata::block::Version
impl core::marker::Send for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Send for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Send for bitcoin::blockdata::constants::ChainHash
impl core::marker::Send for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Send for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2943,6 +2941,8 @@ impl core::marker::Send for bitcoin::key::TweakedPublicKey
impl core::marker::Send for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Send for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Send for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Send for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Send for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Send for bitcoin::network::Network
impl core::marker::Send for bitcoin::network::NetworkKind
impl core::marker::Send for bitcoin::network::ParseNetworkError
@ -3080,11 +3080,9 @@ impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Bip34Error
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Block
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::BlockHash
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Header
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::ValidationError
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Version
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::blockdata::constants::ChainHash
impl core::marker::StructuralPartialEq for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::StructuralPartialEq for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3140,6 +3138,8 @@ impl core::marker::StructuralPartialEq for bitcoin::key::TweakedPublicKey
impl core::marker::StructuralPartialEq for bitcoin::key::UncompressedPublicKeyError
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::network::Network
impl core::marker::StructuralPartialEq for bitcoin::network::NetworkKind
impl core::marker::StructuralPartialEq for bitcoin::network::ParseNetworkError
@ -3275,11 +3275,9 @@ impl core::marker::Sync for bitcoin::blockdata::block::Bip34Error
impl core::marker::Sync for bitcoin::blockdata::block::Block
impl core::marker::Sync for bitcoin::blockdata::block::BlockHash
impl core::marker::Sync for bitcoin::blockdata::block::Header
impl core::marker::Sync for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Sync for bitcoin::blockdata::block::ValidationError
impl core::marker::Sync for bitcoin::blockdata::block::Version
impl core::marker::Sync for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Sync for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Sync for bitcoin::blockdata::constants::ChainHash
impl core::marker::Sync for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Sync for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3340,6 +3338,8 @@ impl core::marker::Sync for bitcoin::key::TweakedPublicKey
impl core::marker::Sync for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Sync for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Sync for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Sync for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Sync for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Sync for bitcoin::network::Network
impl core::marker::Sync for bitcoin::network::NetworkKind
impl core::marker::Sync for bitcoin::network::ParseNetworkError
@ -3480,11 +3480,9 @@ impl core::marker::Unpin for bitcoin::blockdata::block::Bip34Error
impl core::marker::Unpin for bitcoin::blockdata::block::Block
impl core::marker::Unpin for bitcoin::blockdata::block::BlockHash
impl core::marker::Unpin for bitcoin::blockdata::block::Header
impl core::marker::Unpin for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Unpin for bitcoin::blockdata::block::ValidationError
impl core::marker::Unpin for bitcoin::blockdata::block::Version
impl core::marker::Unpin for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Unpin for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Unpin for bitcoin::blockdata::constants::ChainHash
impl core::marker::Unpin for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Unpin for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3545,6 +3543,8 @@ impl core::marker::Unpin for bitcoin::key::TweakedPublicKey
impl core::marker::Unpin for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Unpin for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Unpin for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Unpin for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Unpin for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Unpin for bitcoin::network::Network
impl core::marker::Unpin for bitcoin::network::NetworkKind
impl core::marker::Unpin for bitcoin::network::ParseNetworkError
@ -3716,11 +3716,9 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Bip3
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Block
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::BlockHash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Header
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::TxMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::ValidationError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Version
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::WitnessCommitment
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::WitnessMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::constants::ChainHash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::locktime::absolute::LockTime
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3779,6 +3777,8 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::key::TweakedPublicKey
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::key::UncompressedPublicKeyError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::MerkleBlockError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::PartialMerkleTree
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::TxMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::WitnessMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::network::Network
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::network::NetworkKind
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::network::ParseNetworkError
@ -3917,11 +3917,9 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Bip34Er
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Block
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::BlockHash
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Header
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::TxMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::ValidationError
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Version
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::WitnessCommitment
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::WitnessMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::constants::ChainHash
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::locktime::absolute::LockTime
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3980,6 +3978,8 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin::key::TweakedPublicKey
impl core::panic::unwind_safe::UnwindSafe for bitcoin::key::UncompressedPublicKeyError
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::MerkleBlockError
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::PartialMerkleTree
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::TxMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::WitnessMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::network::Network
impl core::panic::unwind_safe::UnwindSafe for bitcoin::network::NetworkKind
impl core::panic::unwind_safe::UnwindSafe for bitcoin::network::ParseNetworkError
@ -4091,9 +4091,7 @@ impl core::str::traits::FromStr for bitcoin::bip32::XKeyIdentifier
impl core::str::traits::FromStr for bitcoin::bip32::Xpriv
impl core::str::traits::FromStr for bitcoin::bip32::Xpub
impl core::str::traits::FromStr for bitcoin::blockdata::block::BlockHash
impl core::str::traits::FromStr for bitcoin::blockdata::block::TxMerkleNode
impl core::str::traits::FromStr for bitcoin::blockdata::block::WitnessCommitment
impl core::str::traits::FromStr for bitcoin::blockdata::block::WitnessMerkleNode
impl core::str::traits::FromStr for bitcoin::blockdata::constants::ChainHash
impl core::str::traits::FromStr for bitcoin::blockdata::locktime::absolute::LockTime
impl core::str::traits::FromStr for bitcoin::blockdata::script::ScriptHash
@ -4104,6 +4102,8 @@ impl core::str::traits::FromStr for bitcoin::blockdata::transaction::Sequence
impl core::str::traits::FromStr for bitcoin::blockdata::transaction::Txid
impl core::str::traits::FromStr for bitcoin::blockdata::transaction::Wtxid
impl core::str::traits::FromStr for bitcoin::ecdsa::Signature
impl core::str::traits::FromStr for bitcoin::merkle_tree::TxMerkleNode
impl core::str::traits::FromStr for bitcoin::merkle_tree::WitnessMerkleNode
impl core::str::traits::FromStr for bitcoin::network::Network
impl core::str::traits::FromStr for bitcoin::p2p::Magic
impl core::str::traits::FromStr for bitcoin::p2p::message::CommandString
@ -4572,13 +4572,13 @@ impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bit
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::bip158::FilterHeader
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::bip32::XKeyIdentifier
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::BlockHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::TxMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::WitnessCommitment
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::WitnessMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::script::ScriptHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::script::WScriptHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::transaction::Txid
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::transaction::Wtxid
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::merkle_tree::TxMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::merkle_tree::WitnessMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::taproot::TapLeafHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::taproot::TapNodeHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::taproot::TapTweakHash
@ -4809,7 +4809,7 @@ pub bitcoin::block::Bip34Error::Unsupported
pub bitcoin::block::Block::header: bitcoin::blockdata::block::Header
pub bitcoin::block::Block::txdata: alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
pub bitcoin::block::Header::bits: bitcoin::pow::CompactTarget
pub bitcoin::block::Header::merkle_root: bitcoin::blockdata::block::TxMerkleNode
pub bitcoin::block::Header::merkle_root: bitcoin::merkle_tree::TxMerkleNode
pub bitcoin::block::Header::nonce: u32
pub bitcoin::block::Header::prev_blockhash: bitcoin::blockdata::block::BlockHash
pub bitcoin::block::Header::time: u32
@ -4823,7 +4823,7 @@ pub bitcoin::blockdata::block::Bip34Error::Unsupported
pub bitcoin::blockdata::block::Block::header: bitcoin::blockdata::block::Header
pub bitcoin::blockdata::block::Block::txdata: alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
pub bitcoin::blockdata::block::Header::bits: bitcoin::pow::CompactTarget
pub bitcoin::blockdata::block::Header::merkle_root: bitcoin::blockdata::block::TxMerkleNode
pub bitcoin::blockdata::block::Header::merkle_root: bitcoin::merkle_tree::TxMerkleNode
pub bitcoin::blockdata::block::Header::nonce: u32
pub bitcoin::blockdata::block::Header::prev_blockhash: bitcoin::blockdata::block::BlockHash
pub bitcoin::blockdata::block::Header::time: u32
@ -5427,15 +5427,11 @@ pub const bitcoin::bip32::XKeyIdentifier::LEN: usize
pub const bitcoin::blockdata::block::BlockHash::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::BlockHash::LEN: usize
pub const bitcoin::blockdata::block::Header::SIZE: usize
pub const bitcoin::blockdata::block::TxMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::TxMerkleNode::LEN: usize
pub const bitcoin::blockdata::block::Version::NO_SOFT_FORK_SIGNALLING: Self
pub const bitcoin::blockdata::block::Version::ONE: Self
pub const bitcoin::blockdata::block::Version::TWO: Self
pub const bitcoin::blockdata::block::WitnessCommitment::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::WitnessCommitment::LEN: usize
pub const bitcoin::blockdata::block::WitnessMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::WitnessMerkleNode::LEN: usize
pub const bitcoin::blockdata::constants::COINBASE_MATURITY: u32 = 100u32
pub const bitcoin::blockdata::constants::ChainHash::BITCOIN: Self
pub const bitcoin::blockdata::constants::ChainHash::REGTEST: Self
@ -5759,6 +5755,10 @@ pub const bitcoin::constants::SCRIPT_ADDRESS_PREFIX_TEST: u8 = 196u8
pub const bitcoin::constants::SUBSIDY_HALVING_INTERVAL: u32 = 210_000u32
pub const bitcoin::constants::TARGET_BLOCK_SPACING: u32 = 600u32
pub const bitcoin::constants::WITNESS_SCALE_FACTOR: units::weight::WITNESS_SCALE_FACTOR
pub const bitcoin::merkle_tree::TxMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::merkle_tree::TxMerkleNode::LEN: usize
pub const bitcoin::merkle_tree::WitnessMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::merkle_tree::WitnessMerkleNode::LEN: usize
pub const bitcoin::opcodes::all::OP_0NOTEQUAL: _
pub const bitcoin::opcodes::all::OP_1ADD: _
pub const bitcoin::opcodes::all::OP_1SUB: _
@ -6534,8 +6534,6 @@ pub fn alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>::consensus_decode_f
pub fn alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::Header>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::Header>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::TxIn>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
@ -6544,6 +6542,8 @@ pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>::consensus_decode
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::consensus::encode::VarInt>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::consensus::encode::VarInt>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::p2p::address::AddrV2Message>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::p2p::address::AddrV2Message>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::p2p::message_blockdata::Inventory>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
@ -7256,8 +7256,8 @@ pub fn bitcoin::blockdata::block::Block::check_merkle_root(&self) -> bool
pub fn bitcoin::blockdata::block::Block::check_witness_commitment(&self) -> bool
pub fn bitcoin::blockdata::block::Block::clone(&self) -> bitcoin::blockdata::block::Block
pub fn bitcoin::blockdata::block::Block::coinbase(&self) -> core::option::Option<&bitcoin::blockdata::transaction::Transaction>
pub fn bitcoin::blockdata::block::Block::compute_merkle_root(&self) -> core::option::Option<bitcoin::blockdata::block::TxMerkleNode>
pub fn bitcoin::blockdata::block::Block::compute_witness_commitment(witness_root: &bitcoin::blockdata::block::WitnessMerkleNode, witness_reserved_value: &[u8]) -> bitcoin::blockdata::block::WitnessCommitment
pub fn bitcoin::blockdata::block::Block::compute_merkle_root(&self) -> core::option::Option<bitcoin::merkle_tree::TxMerkleNode>
pub fn bitcoin::blockdata::block::Block::compute_witness_commitment(witness_root: &bitcoin::merkle_tree::WitnessMerkleNode, witness_reserved_value: &[u8]) -> bitcoin::blockdata::block::WitnessCommitment
pub fn bitcoin::blockdata::block::Block::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<bitcoin::blockdata::block::Block, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::Block::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<bitcoin::blockdata::block::Block, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::Block::consensus_encode<R: bitcoin_io::Write + core::marker::Sized>(&self, r: &mut R) -> core::result::Result<usize, bitcoin_io::error::Error>
@ -7265,7 +7265,7 @@ pub fn bitcoin::blockdata::block::Block::eq(&self, other: &bitcoin::blockdata::b
pub fn bitcoin::blockdata::block::Block::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::blockdata::block::Block::total_size(&self) -> usize
pub fn bitcoin::blockdata::block::Block::weight(&self) -> bitcoin_units::weight::Weight
pub fn bitcoin::blockdata::block::Block::witness_root(&self) -> core::option::Option<bitcoin::blockdata::block::WitnessMerkleNode>
pub fn bitcoin::blockdata::block::Block::witness_root(&self) -> core::option::Option<bitcoin::merkle_tree::WitnessMerkleNode>
pub fn bitcoin::blockdata::block::BlockHash::all_zeros() -> Self
pub fn bitcoin::blockdata::block::BlockHash::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::BlockHash::as_byte_array(&self) -> &Self::Bytes
@ -7315,37 +7315,6 @@ pub fn bitcoin::blockdata::block::Header::partial_cmp(&self, other: &bitcoin::bl
pub fn bitcoin::blockdata::block::Header::target(&self) -> bitcoin::pow::Target
pub fn bitcoin::blockdata::block::Header::validate_pow(&self, required_target: bitcoin::pow::Target) -> core::result::Result<bitcoin::blockdata::block::BlockHash, bitcoin::blockdata::block::ValidationError>
pub fn bitcoin::blockdata::block::Header::work(&self) -> bitcoin::pow::Work
pub fn bitcoin::blockdata::block::TxMerkleNode::all_zeros() -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::TxMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::blockdata::block::TxMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::blockdata::block::TxMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::blockdata::block::TxMerkleNode::clone(&self) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::cmp(&self, other: &bitcoin::blockdata::block::TxMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::blockdata::block::TxMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::TxMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::blockdata::block::TxMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::blockdata::block::TxMerkleNode::eq(&self, other: &bitcoin::blockdata::block::TxMerkleNode) -> bool
pub fn bitcoin::blockdata::block::TxMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::blockdata::block::TxMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::from(txid: bitcoin::blockdata::transaction::Txid) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::blockdata::block::TxMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::blockdata::block::TxMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::blockdata::block::TxMerkleNode, Self::Err>
pub fn bitcoin::blockdata::block::TxMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::blockdata::block::TxMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::blockdata::block::TxMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::blockdata::block::TxMerkleNode::partial_cmp(&self, other: &bitcoin::blockdata::block::TxMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::blockdata::block::TxMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::ValidationError::clone(&self) -> bitcoin::blockdata::block::ValidationError
pub fn bitcoin::blockdata::block::ValidationError::eq(&self, other: &bitcoin::blockdata::block::ValidationError) -> bool
pub fn bitcoin::blockdata::block::ValidationError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
@ -7390,37 +7359,6 @@ pub fn bitcoin::blockdata::block::WitnessCommitment::partial_cmp(&self, other: &
pub fn bitcoin::blockdata::block::WitnessCommitment::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::WitnessCommitment::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::blockdata::block::WitnessCommitment::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::WitnessMerkleNode::all_zeros() -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::blockdata::block::WitnessMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::blockdata::block::WitnessMerkleNode::clone(&self) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::cmp(&self, other: &bitcoin::blockdata::block::WitnessMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::blockdata::block::WitnessMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::blockdata::block::WitnessMerkleNode::eq(&self, other: &bitcoin::blockdata::block::WitnessMerkleNode) -> bool
pub fn bitcoin::blockdata::block::WitnessMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from(wtxid: bitcoin::blockdata::transaction::Wtxid) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::blockdata::block::WitnessMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::blockdata::block::WitnessMerkleNode, Self::Err>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::blockdata::block::WitnessMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::blockdata::block::WitnessMerkleNode::partial_cmp(&self, other: &bitcoin::blockdata::block::WitnessMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::constants::ChainHash::as_byte_array(&self) -> &[u8; 32]
pub fn bitcoin::blockdata::constants::ChainHash::as_bytes(&self) -> &[u8]
pub fn bitcoin::blockdata::constants::ChainHash::as_mut(&mut self) -> &mut [u8; 32]
@ -8443,18 +8381,83 @@ pub fn bitcoin::merkle_tree::MerkleBlockError::eq(&self, other: &bitcoin::merkle
pub fn bitcoin::merkle_tree::MerkleBlockError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::MerkleBlockError::from(never: core::convert::Infallible) -> Self
pub fn bitcoin::merkle_tree::MerkleBlockError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
pub fn bitcoin::merkle_tree::MerkleNode::calculate_root<I: core::iter::traits::iterator::Iterator<Item = Self::Leaf>>(iter: I) -> core::option::Option<Self>
pub fn bitcoin::merkle_tree::MerkleNode::combine(&self, other: &Self) -> Self
pub fn bitcoin::merkle_tree::MerkleNode::from_leaf(leaf: Self::Leaf) -> Self
pub fn bitcoin::merkle_tree::PartialMerkleTree::bits(&self) -> &alloc::vec::Vec<bool>
pub fn bitcoin::merkle_tree::PartialMerkleTree::clone(&self) -> bitcoin::merkle_tree::PartialMerkleTree
pub fn bitcoin::merkle_tree::PartialMerkleTree::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::merkle_tree::PartialMerkleTree::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::merkle_tree::PartialMerkleTree::eq(&self, other: &bitcoin::merkle_tree::PartialMerkleTree) -> bool
pub fn bitcoin::merkle_tree::PartialMerkleTree::extract_matches(&self, matches: &mut alloc::vec::Vec<bitcoin::blockdata::transaction::Txid>, indexes: &mut alloc::vec::Vec<u32>) -> core::result::Result<bitcoin::blockdata::block::TxMerkleNode, bitcoin::merkle_tree::MerkleBlockError>
pub fn bitcoin::merkle_tree::PartialMerkleTree::extract_matches(&self, matches: &mut alloc::vec::Vec<bitcoin::blockdata::transaction::Txid>, indexes: &mut alloc::vec::Vec<u32>) -> core::result::Result<bitcoin::merkle_tree::TxMerkleNode, bitcoin::merkle_tree::MerkleBlockError>
pub fn bitcoin::merkle_tree::PartialMerkleTree::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::PartialMerkleTree::from_txids(txids: &[bitcoin::blockdata::transaction::Txid], matches: &[bool]) -> Self
pub fn bitcoin::merkle_tree::PartialMerkleTree::hashes(&self) -> &alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>
pub fn bitcoin::merkle_tree::PartialMerkleTree::hashes(&self) -> &alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>
pub fn bitcoin::merkle_tree::PartialMerkleTree::num_transactions(&self) -> u32
pub fn bitcoin::merkle_tree::calculate_root<T, I>(hashes: I) -> core::option::Option<T> where T: bitcoin_hashes::Hash + bitcoin::consensus::encode::Encodable, <T as bitcoin_hashes::Hash>::Engine: bitcoin_io::Write, I: core::iter::traits::iterator::Iterator<Item = T>
pub fn bitcoin::merkle_tree::calculate_root_inline<T>(hashes: &mut [T]) -> core::option::Option<T> where T: bitcoin_hashes::Hash + bitcoin::consensus::encode::Encodable, <T as bitcoin_hashes::Hash>::Engine: bitcoin_io::Write
pub fn bitcoin::merkle_tree::TxMerkleNode::all_zeros() -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::merkle_tree::TxMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::merkle_tree::TxMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::merkle_tree::TxMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::merkle_tree::TxMerkleNode::clone(&self) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::cmp(&self, other: &bitcoin::merkle_tree::TxMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::merkle_tree::TxMerkleNode::combine(&self, other: &Self) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::merkle_tree::TxMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::merkle_tree::TxMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::merkle_tree::TxMerkleNode::eq(&self, other: &bitcoin::merkle_tree::TxMerkleNode) -> bool
pub fn bitcoin::merkle_tree::TxMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::TxMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::from_leaf(leaf: Self::Leaf) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::merkle_tree::TxMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::merkle_tree::TxMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::merkle_tree::TxMerkleNode, Self::Err>
pub fn bitcoin::merkle_tree::TxMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::merkle_tree::TxMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::merkle_tree::TxMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::merkle_tree::TxMerkleNode::partial_cmp(&self, other: &bitcoin::merkle_tree::TxMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::merkle_tree::TxMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::merkle_tree::WitnessMerkleNode::all_zeros() -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::merkle_tree::WitnessMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::merkle_tree::WitnessMerkleNode::clone(&self) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::cmp(&self, other: &bitcoin::merkle_tree::WitnessMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::merkle_tree::WitnessMerkleNode::combine(&self, other: &Self) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::merkle_tree::WitnessMerkleNode::eq(&self, other: &bitcoin::merkle_tree::WitnessMerkleNode) -> bool
pub fn bitcoin::merkle_tree::WitnessMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_leaf(leaf: Self::Leaf) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::merkle_tree::WitnessMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::merkle_tree::WitnessMerkleNode, Self::Err>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::merkle_tree::WitnessMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::merkle_tree::WitnessMerkleNode::partial_cmp(&self, other: &bitcoin::merkle_tree::WitnessMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::network::Network::as_ref(&self) -> &bitcoin::consensus::params::Params
pub fn bitcoin::network::Network::chain_hash(self) -> bitcoin::blockdata::constants::ChainHash
pub fn bitcoin::network::Network::clone(&self) -> bitcoin::network::Network
@ -9493,11 +9496,11 @@ pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::SegwitV0Sighash) -
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::bip158::FilterHash) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::bip158::FilterHeader) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::BlockHash) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::TxMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::WitnessCommitment) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::WitnessMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::transaction::Txid) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::transaction::Wtxid) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::merkle_tree::TxMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::merkle_tree::WitnessMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256t::Hash<bitcoin::TapSighashTag>::from(hashtype: bitcoin::TapSighash) -> bitcoin_hashes::sha256t::Hash<bitcoin::TapSighashTag>
pub fn bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapBranchTag>::from(hashtype: bitcoin::taproot::TapNodeHash) -> bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapBranchTag>
pub fn bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapLeafTag>::from(hashtype: bitcoin::taproot::TapLeafHash) -> bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapLeafTag>
@ -9698,17 +9701,13 @@ pub struct bitcoin::bip32::Xpub
pub struct bitcoin::block::Block
pub struct bitcoin::block::BlockHash(_)
pub struct bitcoin::block::Header
pub struct bitcoin::block::TxMerkleNode(_)
pub struct bitcoin::block::Version(_)
pub struct bitcoin::block::WitnessCommitment(_)
pub struct bitcoin::block::WitnessMerkleNode(_)
pub struct bitcoin::blockdata::block::Block
pub struct bitcoin::blockdata::block::BlockHash(_)
pub struct bitcoin::blockdata::block::Header
pub struct bitcoin::blockdata::block::TxMerkleNode(_)
pub struct bitcoin::blockdata::block::Version(_)
pub struct bitcoin::blockdata::block::WitnessCommitment(_)
pub struct bitcoin::blockdata::block::WitnessMerkleNode(_)
pub struct bitcoin::blockdata::constants::ChainHash(_)
pub struct bitcoin::blockdata::locktime::relative::DisabledLockTimeError(_)
pub struct bitcoin::blockdata::opcodes::Opcode
@ -9764,6 +9763,8 @@ pub struct bitcoin::key::WPubkeyHash(_)
pub struct bitcoin::locktime::relative::DisabledLockTimeError(_)
pub struct bitcoin::merkle_tree::MerkleBlock
pub struct bitcoin::merkle_tree::PartialMerkleTree
pub struct bitcoin::merkle_tree::TxMerkleNode(_)
pub struct bitcoin::merkle_tree::WitnessMerkleNode(_)
pub struct bitcoin::opcodes::Opcode
pub struct bitcoin::p2p::Address
pub struct bitcoin::p2p::Magic(_)
@ -9871,6 +9872,7 @@ pub trait bitcoin::consensus::encode::Encodable
pub trait bitcoin::consensus::encode::ReadExt: bitcoin_io::Read
pub trait bitcoin::consensus::encode::WriteExt: bitcoin_io::Write
pub trait bitcoin::key::TapTweak
pub trait bitcoin::merkle_tree::MerkleNode: core::marker::Copy
pub trait bitcoin::psbt::GetKey
pub trait bitcoin::script::PushBytesErrorReport
pub type &'a bitcoin::bip32::DerivationPath::IntoIter = core::slice::iter::Iter<'a, bitcoin::bip32::ChildNumber>
@ -9953,18 +9955,10 @@ pub type bitcoin::blockdata::block::BlockHash::Bytes = <bitcoin_hashes::sha256d:
pub type bitcoin::blockdata::block::BlockHash::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::BlockHash::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::BlockHash::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::block::TxMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::blockdata::block::TxMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::TxMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::TxMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::block::WitnessCommitment::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::blockdata::block::WitnessCommitment::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::WitnessCommitment::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::WitnessCommitment::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::block::WitnessMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::blockdata::block::WitnessMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::WitnessMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::WitnessMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::constants::ChainHash::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::constants::ChainHash::Error = core::array::TryFromSliceError
pub type bitcoin::blockdata::constants::ChainHash::Output = <[u8] as core::ops::index::Index<I>>::Output
@ -10018,6 +10012,17 @@ pub type bitcoin::key::UntweakedKeypair::TweakedKey = bitcoin::key::TweakedKeypa
pub type bitcoin::key::UntweakedPublicKey = secp256k1::key::XOnlyPublicKey
pub type bitcoin::key::UntweakedPublicKey::TweakedAux = (bitcoin::key::TweakedPublicKey, secp256k1::key::Parity)
pub type bitcoin::key::UntweakedPublicKey::TweakedKey = bitcoin::key::TweakedPublicKey
pub type bitcoin::merkle_tree::MerkleNode::Leaf
pub type bitcoin::merkle_tree::TxMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::merkle_tree::TxMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::merkle_tree::TxMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::merkle_tree::TxMerkleNode::Leaf = bitcoin::blockdata::transaction::Txid
pub type bitcoin::merkle_tree::TxMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::merkle_tree::WitnessMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::merkle_tree::WitnessMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::merkle_tree::WitnessMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::merkle_tree::WitnessMerkleNode::Leaf = bitcoin::blockdata::transaction::Wtxid
pub type bitcoin::merkle_tree::WitnessMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::network::Network::Err = bitcoin::network::ParseNetworkError
pub type bitcoin::network::Network::Error = bitcoin::network::UnknownChainHashError
pub type bitcoin::network::Network::Error = bitcoin::p2p::UnknownMagicError

View File

@ -136,10 +136,8 @@ impl bitcoin::bip32::Xpub
impl bitcoin::blockdata::block::Block
impl bitcoin::blockdata::block::BlockHash
impl bitcoin::blockdata::block::Header
impl bitcoin::blockdata::block::TxMerkleNode
impl bitcoin::blockdata::block::Version
impl bitcoin::blockdata::block::WitnessCommitment
impl bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin::blockdata::constants::ChainHash
impl bitcoin::blockdata::locktime::absolute::LockTime
impl bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -188,11 +186,11 @@ impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::bip158::
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::bip158::FilterHeader>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::block::Header>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxIn>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::consensus::encode::VarInt>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<bitcoin::taproot::TapLeafHash>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<u64>
impl bitcoin::consensus::encode::Decodable for alloc::vec::Vec<u8>
@ -207,9 +205,7 @@ impl bitcoin::consensus::encode::Decodable for bitcoin::bip158::FilterHeader
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::Block
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::BlockHash
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::Header
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::TxMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::Version
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::locktime::absolute::LockTime
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::script::ScriptBuf
impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::transaction::OutPoint
@ -224,6 +220,8 @@ impl bitcoin::consensus::encode::Decodable for bitcoin::blockdata::witness::Witn
impl bitcoin::consensus::encode::Decodable for bitcoin::consensus::encode::CheckedData
impl bitcoin::consensus::encode::Decodable for bitcoin::consensus::encode::VarInt
impl bitcoin::consensus::encode::Decodable for bitcoin::merkle_tree::PartialMerkleTree
impl bitcoin::consensus::encode::Decodable for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::consensus::encode::Decodable for bitcoin::p2p::Magic
impl bitcoin::consensus::encode::Decodable for bitcoin::p2p::ServiceFlags
impl bitcoin::consensus::encode::Decodable for bitcoin::pow::CompactTarget
@ -262,11 +260,11 @@ impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::bip158::
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::bip158::FilterHeader>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::block::Header>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxIn>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::consensus::encode::VarInt>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<bitcoin::taproot::TapLeafHash>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<u64>
impl bitcoin::consensus::encode::Encodable for alloc::vec::Vec<u8>
@ -281,9 +279,7 @@ impl bitcoin::consensus::encode::Encodable for bitcoin::bip158::FilterHeader
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::Block
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::BlockHash
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::Header
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::TxMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::Version
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::locktime::absolute::LockTime
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::script::Script
impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::script::ScriptBuf
@ -299,6 +295,8 @@ impl bitcoin::consensus::encode::Encodable for bitcoin::blockdata::witness::Witn
impl bitcoin::consensus::encode::Encodable for bitcoin::consensus::encode::CheckedData
impl bitcoin::consensus::encode::Encodable for bitcoin::consensus::encode::VarInt
impl bitcoin::consensus::encode::Encodable for bitcoin::merkle_tree::PartialMerkleTree
impl bitcoin::consensus::encode::Encodable for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::consensus::encode::Encodable for bitcoin::p2p::Magic
impl bitcoin::consensus::encode::Encodable for bitcoin::p2p::ServiceFlags
impl bitcoin::consensus::encode::Encodable for bitcoin::pow::CompactTarget
@ -327,7 +325,11 @@ impl bitcoin::key::TapTweak for bitcoin::key::UntweakedKeypair
impl bitcoin::key::TapTweak for bitcoin::key::UntweakedPublicKey
impl bitcoin::key::TweakedKeypair
impl bitcoin::key::TweakedPublicKey
impl bitcoin::merkle_tree::MerkleNode for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::merkle_tree::MerkleNode for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::merkle_tree::PartialMerkleTree
impl bitcoin::merkle_tree::TxMerkleNode
impl bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin::network::Network
impl bitcoin::network::NetworkKind
impl bitcoin::p2p::Magic
@ -371,13 +373,13 @@ impl bitcoin_hashes::Hash for bitcoin::bip158::FilterHash
impl bitcoin_hashes::Hash for bitcoin::bip158::FilterHeader
impl bitcoin_hashes::Hash for bitcoin::bip32::XKeyIdentifier
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::BlockHash
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::TxMerkleNode
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::WitnessCommitment
impl bitcoin_hashes::Hash for bitcoin::blockdata::block::WitnessMerkleNode
impl bitcoin_hashes::Hash for bitcoin::blockdata::script::ScriptHash
impl bitcoin_hashes::Hash for bitcoin::blockdata::script::WScriptHash
impl bitcoin_hashes::Hash for bitcoin::blockdata::transaction::Txid
impl bitcoin_hashes::Hash for bitcoin::blockdata::transaction::Wtxid
impl bitcoin_hashes::Hash for bitcoin::merkle_tree::TxMerkleNode
impl bitcoin_hashes::Hash for bitcoin::merkle_tree::WitnessMerkleNode
impl bitcoin_hashes::Hash for bitcoin::taproot::TapLeafHash
impl bitcoin_hashes::Hash for bitcoin::taproot::TapNodeHash
impl bitcoin_hashes::Hash for bitcoin::taproot::TapTweakHash
@ -403,15 +405,15 @@ impl core::borrow::Borrow<[u8]> for bitcoin::bip32::ChainCode
impl core::borrow::Borrow<[u8]> for bitcoin::bip32::Fingerprint
impl core::borrow::Borrow<[u8]> for bitcoin::bip32::XKeyIdentifier
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::BlockHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::TxMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::WitnessCommitment
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::constants::ChainHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::script::ScriptHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::script::WScriptHash
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::transaction::Txid
impl core::borrow::Borrow<[u8]> for bitcoin::blockdata::transaction::Wtxid
impl core::borrow::Borrow<[u8]> for bitcoin::ecdsa::SerializedSignature
impl core::borrow::Borrow<[u8]> for bitcoin::merkle_tree::TxMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::borrow::Borrow<[u8]> for bitcoin::p2p::Magic
impl core::borrow::Borrow<[u8]> for bitcoin::taproot::TapLeafHash
impl core::borrow::Borrow<[u8]> for bitcoin::taproot::TapNodeHash
@ -481,11 +483,9 @@ impl core::clone::Clone for bitcoin::blockdata::block::Bip34Error
impl core::clone::Clone for bitcoin::blockdata::block::Block
impl core::clone::Clone for bitcoin::blockdata::block::BlockHash
impl core::clone::Clone for bitcoin::blockdata::block::Header
impl core::clone::Clone for bitcoin::blockdata::block::TxMerkleNode
impl core::clone::Clone for bitcoin::blockdata::block::ValidationError
impl core::clone::Clone for bitcoin::blockdata::block::Version
impl core::clone::Clone for bitcoin::blockdata::block::WitnessCommitment
impl core::clone::Clone for bitcoin::blockdata::block::WitnessMerkleNode
impl core::clone::Clone for bitcoin::blockdata::constants::ChainHash
impl core::clone::Clone for bitcoin::blockdata::locktime::absolute::LockTime
impl core::clone::Clone for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -542,6 +542,8 @@ impl core::clone::Clone for bitcoin::key::TweakedPublicKey
impl core::clone::Clone for bitcoin::key::UncompressedPublicKeyError
impl core::clone::Clone for bitcoin::merkle_tree::MerkleBlockError
impl core::clone::Clone for bitcoin::merkle_tree::PartialMerkleTree
impl core::clone::Clone for bitcoin::merkle_tree::TxMerkleNode
impl core::clone::Clone for bitcoin::merkle_tree::WitnessMerkleNode
impl core::clone::Clone for bitcoin::network::Network
impl core::clone::Clone for bitcoin::network::NetworkKind
impl core::clone::Clone for bitcoin::network::ParseNetworkError
@ -649,11 +651,9 @@ impl core::cmp::Eq for bitcoin::blockdata::block::Bip34Error
impl core::cmp::Eq for bitcoin::blockdata::block::Block
impl core::cmp::Eq for bitcoin::blockdata::block::BlockHash
impl core::cmp::Eq for bitcoin::blockdata::block::Header
impl core::cmp::Eq for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::Eq for bitcoin::blockdata::block::ValidationError
impl core::cmp::Eq for bitcoin::blockdata::block::Version
impl core::cmp::Eq for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::Eq for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::Eq for bitcoin::blockdata::constants::ChainHash
impl core::cmp::Eq for bitcoin::blockdata::locktime::absolute::LockTime
impl core::cmp::Eq for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -710,6 +710,8 @@ impl core::cmp::Eq for bitcoin::key::TweakedPublicKey
impl core::cmp::Eq for bitcoin::key::UncompressedPublicKeyError
impl core::cmp::Eq for bitcoin::merkle_tree::MerkleBlockError
impl core::cmp::Eq for bitcoin::merkle_tree::PartialMerkleTree
impl core::cmp::Eq for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::Eq for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::Eq for bitcoin::network::Network
impl core::cmp::Eq for bitcoin::network::NetworkKind
impl core::cmp::Eq for bitcoin::network::ParseNetworkError
@ -797,10 +799,8 @@ impl core::cmp::Ord for bitcoin::bip32::XKeyIdentifier
impl core::cmp::Ord for bitcoin::bip32::Xpub
impl core::cmp::Ord for bitcoin::blockdata::block::BlockHash
impl core::cmp::Ord for bitcoin::blockdata::block::Header
impl core::cmp::Ord for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::Ord for bitcoin::blockdata::block::Version
impl core::cmp::Ord for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::Ord for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::Ord for bitcoin::blockdata::constants::ChainHash
impl core::cmp::Ord for bitcoin::blockdata::opcodes::ClassifyContext
impl core::cmp::Ord for bitcoin::blockdata::script::PushBytes
@ -824,6 +824,8 @@ impl core::cmp::Ord for bitcoin::consensus::encode::VarInt
impl core::cmp::Ord for bitcoin::key::SortKey
impl core::cmp::Ord for bitcoin::key::TweakedKeypair
impl core::cmp::Ord for bitcoin::key::TweakedPublicKey
impl core::cmp::Ord for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::Ord for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::Ord for bitcoin::network::Network
impl core::cmp::Ord for bitcoin::network::NetworkKind
impl core::cmp::Ord for bitcoin::p2p::Magic
@ -901,11 +903,9 @@ impl core::cmp::PartialEq for bitcoin::blockdata::block::Bip34Error
impl core::cmp::PartialEq for bitcoin::blockdata::block::Block
impl core::cmp::PartialEq for bitcoin::blockdata::block::BlockHash
impl core::cmp::PartialEq for bitcoin::blockdata::block::Header
impl core::cmp::PartialEq for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::PartialEq for bitcoin::blockdata::block::ValidationError
impl core::cmp::PartialEq for bitcoin::blockdata::block::Version
impl core::cmp::PartialEq for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::PartialEq for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::PartialEq for bitcoin::blockdata::constants::ChainHash
impl core::cmp::PartialEq for bitcoin::blockdata::locktime::absolute::LockTime
impl core::cmp::PartialEq for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -962,6 +962,8 @@ impl core::cmp::PartialEq for bitcoin::key::TweakedPublicKey
impl core::cmp::PartialEq for bitcoin::key::UncompressedPublicKeyError
impl core::cmp::PartialEq for bitcoin::merkle_tree::MerkleBlockError
impl core::cmp::PartialEq for bitcoin::merkle_tree::PartialMerkleTree
impl core::cmp::PartialEq for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::PartialEq for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::PartialEq for bitcoin::network::Network
impl core::cmp::PartialEq for bitcoin::network::NetworkKind
impl core::cmp::PartialEq for bitcoin::network::ParseNetworkError
@ -1053,10 +1055,8 @@ impl core::cmp::PartialOrd for bitcoin::bip32::XKeyIdentifier
impl core::cmp::PartialOrd for bitcoin::bip32::Xpub
impl core::cmp::PartialOrd for bitcoin::blockdata::block::BlockHash
impl core::cmp::PartialOrd for bitcoin::blockdata::block::Header
impl core::cmp::PartialOrd for bitcoin::blockdata::block::TxMerkleNode
impl core::cmp::PartialOrd for bitcoin::blockdata::block::Version
impl core::cmp::PartialOrd for bitcoin::blockdata::block::WitnessCommitment
impl core::cmp::PartialOrd for bitcoin::blockdata::block::WitnessMerkleNode
impl core::cmp::PartialOrd for bitcoin::blockdata::constants::ChainHash
impl core::cmp::PartialOrd for bitcoin::blockdata::locktime::absolute::LockTime
impl core::cmp::PartialOrd for bitcoin::blockdata::locktime::relative::LockTime
@ -1082,6 +1082,8 @@ impl core::cmp::PartialOrd for bitcoin::consensus::encode::VarInt
impl core::cmp::PartialOrd for bitcoin::key::SortKey
impl core::cmp::PartialOrd for bitcoin::key::TweakedKeypair
impl core::cmp::PartialOrd for bitcoin::key::TweakedPublicKey
impl core::cmp::PartialOrd for bitcoin::merkle_tree::TxMerkleNode
impl core::cmp::PartialOrd for bitcoin::merkle_tree::WitnessMerkleNode
impl core::cmp::PartialOrd for bitcoin::network::Network
impl core::cmp::PartialOrd for bitcoin::network::NetworkKind
impl core::cmp::PartialOrd for bitcoin::p2p::Magic
@ -1222,13 +1224,13 @@ impl core::convert::AsRef<[u8; 32]> for bitcoin::bip158::FilterHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::bip158::FilterHeader
impl core::convert::AsRef<[u8; 32]> for bitcoin::bip32::ChainCode
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::BlockHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::WitnessCommitment
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::constants::ChainHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::script::WScriptHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::transaction::Txid
impl core::convert::AsRef<[u8; 32]> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::AsRef<[u8; 32]> for bitcoin::merkle_tree::TxMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::convert::AsRef<[u8; 32]> for bitcoin::taproot::TapLeafHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::taproot::TapNodeHash
impl core::convert::AsRef<[u8; 32]> for bitcoin::taproot::TapTweakHash
@ -1247,9 +1249,7 @@ impl core::convert::AsRef<[u8]> for bitcoin::bip32::ChainCode
impl core::convert::AsRef<[u8]> for bitcoin::bip32::Fingerprint
impl core::convert::AsRef<[u8]> for bitcoin::bip32::XKeyIdentifier
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::BlockHash
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::WitnessCommitment
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::constants::ChainHash
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::script::PushBytes
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::script::Script
@ -1259,6 +1259,8 @@ impl core::convert::AsRef<[u8]> for bitcoin::blockdata::script::WScriptHash
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::transaction::Txid
impl core::convert::AsRef<[u8]> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::AsRef<[u8]> for bitcoin::ecdsa::SerializedSignature
impl core::convert::AsRef<[u8]> for bitcoin::merkle_tree::TxMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::convert::AsRef<[u8]> for bitcoin::p2p::Magic
impl core::convert::AsRef<[u8]> for bitcoin::taproot::TapLeafHash
impl core::convert::AsRef<[u8]> for bitcoin::taproot::TapNodeHash
@ -1612,9 +1614,7 @@ impl core::convert::From<bitcoin::bip32::Xpub> for bitcoin::bip32::XKeyIdentifie
impl core::convert::From<bitcoin::blockdata::block::Block> for bitcoin::blockdata::block::BlockHash
impl core::convert::From<bitcoin::blockdata::block::BlockHash> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::block::Header> for bitcoin::blockdata::block::BlockHash
impl core::convert::From<bitcoin::blockdata::block::TxMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::block::WitnessCommitment> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::block::WitnessMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::locktime::relative::LockTime> for bitcoin::blockdata::transaction::Sequence
impl core::convert::From<bitcoin::blockdata::script::PushBytesBuf> for alloc::vec::Vec<u8>
impl core::convert::From<bitcoin::blockdata::script::ScriptBuf> for alloc::borrow::Cow<'_, bitcoin::blockdata::script::Script>
@ -1639,9 +1639,7 @@ impl core::convert::From<bitcoin::blockdata::transaction::InputsIndexError> for
impl core::convert::From<bitcoin::blockdata::transaction::Sequence> for u32
impl core::convert::From<bitcoin::blockdata::transaction::Transaction> for bitcoin::blockdata::transaction::Txid
impl core::convert::From<bitcoin::blockdata::transaction::Transaction> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::From<bitcoin::blockdata::transaction::Txid> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::From<bitcoin::blockdata::transaction::Txid> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::blockdata::transaction::Wtxid> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::From<bitcoin::blockdata::transaction::Wtxid> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::consensus::encode::Error> for bitcoin::psbt::Error
impl core::convert::From<bitcoin::key::FromSliceError> for bitcoin::key::ParsePublicKeyError
@ -1650,6 +1648,8 @@ impl core::convert::From<bitcoin::key::InvalidBase58PayloadLengthError> for bitc
impl core::convert::From<bitcoin::key::TweakedKeypair> for bitcoin::key::TweakedPublicKey
impl core::convert::From<bitcoin::key::TweakedKeypair> for secp256k1::key::Keypair
impl core::convert::From<bitcoin::key::TweakedPublicKey> for secp256k1::key::XOnlyPublicKey
impl core::convert::From<bitcoin::merkle_tree::TxMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::merkle_tree::WitnessMerkleNode> for bitcoin_hashes::sha256d::Hash
impl core::convert::From<bitcoin::network::Network> for &'static bitcoin::consensus::params::Params
impl core::convert::From<bitcoin::network::Network> for bitcoin::address::KnownHrp
impl core::convert::From<bitcoin::network::Network> for bitcoin::consensus::params::Params
@ -1685,11 +1685,11 @@ impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::SegwitV0Sig
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::bip158::FilterHash
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::bip158::FilterHeader
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::BlockHash
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::TxMerkleNode
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::WitnessCommitment
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::block::WitnessMerkleNode
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::transaction::Txid
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::blockdata::transaction::Wtxid
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::merkle_tree::TxMerkleNode
impl core::convert::From<bitcoin_hashes::sha256d::Hash> for bitcoin::merkle_tree::WitnessMerkleNode
impl core::convert::From<bitcoin_hashes::sha256t::Hash<bitcoin::TapSighashTag>> for bitcoin::TapSighash
impl core::convert::From<bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapBranchTag>> for bitcoin::taproot::TapNodeHash
impl core::convert::From<bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapLeafTag>> for bitcoin::taproot::TapLeafHash
@ -1845,11 +1845,9 @@ impl core::fmt::Debug for bitcoin::blockdata::block::Bip34Error
impl core::fmt::Debug for bitcoin::blockdata::block::Block
impl core::fmt::Debug for bitcoin::blockdata::block::BlockHash
impl core::fmt::Debug for bitcoin::blockdata::block::Header
impl core::fmt::Debug for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::Debug for bitcoin::blockdata::block::ValidationError
impl core::fmt::Debug for bitcoin::blockdata::block::Version
impl core::fmt::Debug for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::Debug for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::Debug for bitcoin::blockdata::constants::ChainHash
impl core::fmt::Debug for bitcoin::blockdata::locktime::absolute::LockTime
impl core::fmt::Debug for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -1910,6 +1908,8 @@ impl core::fmt::Debug for bitcoin::key::TweakedPublicKey
impl core::fmt::Debug for bitcoin::key::UncompressedPublicKeyError
impl core::fmt::Debug for bitcoin::merkle_tree::MerkleBlockError
impl core::fmt::Debug for bitcoin::merkle_tree::PartialMerkleTree
impl core::fmt::Debug for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::Debug for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::Debug for bitcoin::network::Network
impl core::fmt::Debug for bitcoin::network::NetworkKind
impl core::fmt::Debug for bitcoin::network::ParseNetworkError
@ -2005,10 +2005,8 @@ impl core::fmt::Display for bitcoin::bip32::Xpriv
impl core::fmt::Display for bitcoin::bip32::Xpub
impl core::fmt::Display for bitcoin::blockdata::block::Bip34Error
impl core::fmt::Display for bitcoin::blockdata::block::BlockHash
impl core::fmt::Display for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::Display for bitcoin::blockdata::block::ValidationError
impl core::fmt::Display for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::Display for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::Display for bitcoin::blockdata::constants::ChainHash
impl core::fmt::Display for bitcoin::blockdata::locktime::absolute::LockTime
impl core::fmt::Display for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2053,6 +2051,8 @@ impl core::fmt::Display for bitcoin::key::ParsePublicKeyError
impl core::fmt::Display for bitcoin::key::TweakedPublicKey
impl core::fmt::Display for bitcoin::key::UncompressedPublicKeyError
impl core::fmt::Display for bitcoin::merkle_tree::MerkleBlockError
impl core::fmt::Display for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::Display for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::Display for bitcoin::network::Network
impl core::fmt::Display for bitcoin::network::ParseNetworkError
impl core::fmt::Display for bitcoin::network::UnknownChainHashError
@ -2102,9 +2102,7 @@ impl core::fmt::LowerHex for bitcoin::bip32::ChainCode
impl core::fmt::LowerHex for bitcoin::bip32::Fingerprint
impl core::fmt::LowerHex for bitcoin::bip32::XKeyIdentifier
impl core::fmt::LowerHex for bitcoin::blockdata::block::BlockHash
impl core::fmt::LowerHex for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::LowerHex for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::LowerHex for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::LowerHex for bitcoin::blockdata::constants::ChainHash
impl core::fmt::LowerHex for bitcoin::blockdata::script::Script
impl core::fmt::LowerHex for bitcoin::blockdata::script::ScriptBuf
@ -2115,6 +2113,8 @@ impl core::fmt::LowerHex for bitcoin::blockdata::transaction::Txid
impl core::fmt::LowerHex for bitcoin::blockdata::transaction::Wtxid
impl core::fmt::LowerHex for bitcoin::ecdsa::SerializedSignature
impl core::fmt::LowerHex for bitcoin::key::TweakedPublicKey
impl core::fmt::LowerHex for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::LowerHex for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::LowerHex for bitcoin::p2p::Magic
impl core::fmt::LowerHex for bitcoin::p2p::ServiceFlags
impl core::fmt::LowerHex for bitcoin::pow::CompactTarget
@ -2137,9 +2137,7 @@ impl core::fmt::UpperHex for bitcoin::bip32::ChainCode
impl core::fmt::UpperHex for bitcoin::bip32::Fingerprint
impl core::fmt::UpperHex for bitcoin::bip32::XKeyIdentifier
impl core::fmt::UpperHex for bitcoin::blockdata::block::BlockHash
impl core::fmt::UpperHex for bitcoin::blockdata::block::TxMerkleNode
impl core::fmt::UpperHex for bitcoin::blockdata::block::WitnessCommitment
impl core::fmt::UpperHex for bitcoin::blockdata::block::WitnessMerkleNode
impl core::fmt::UpperHex for bitcoin::blockdata::constants::ChainHash
impl core::fmt::UpperHex for bitcoin::blockdata::script::Script
impl core::fmt::UpperHex for bitcoin::blockdata::script::ScriptBuf
@ -2149,6 +2147,8 @@ impl core::fmt::UpperHex for bitcoin::blockdata::transaction::Sequence
impl core::fmt::UpperHex for bitcoin::blockdata::transaction::Txid
impl core::fmt::UpperHex for bitcoin::blockdata::transaction::Wtxid
impl core::fmt::UpperHex for bitcoin::ecdsa::SerializedSignature
impl core::fmt::UpperHex for bitcoin::merkle_tree::TxMerkleNode
impl core::fmt::UpperHex for bitcoin::merkle_tree::WitnessMerkleNode
impl core::fmt::UpperHex for bitcoin::p2p::Magic
impl core::fmt::UpperHex for bitcoin::p2p::ServiceFlags
impl core::fmt::UpperHex for bitcoin::pow::CompactTarget
@ -2189,10 +2189,8 @@ impl core::hash::Hash for bitcoin::bip32::XKeyIdentifier
impl core::hash::Hash for bitcoin::bip32::Xpub
impl core::hash::Hash for bitcoin::blockdata::block::BlockHash
impl core::hash::Hash for bitcoin::blockdata::block::Header
impl core::hash::Hash for bitcoin::blockdata::block::TxMerkleNode
impl core::hash::Hash for bitcoin::blockdata::block::Version
impl core::hash::Hash for bitcoin::blockdata::block::WitnessCommitment
impl core::hash::Hash for bitcoin::blockdata::block::WitnessMerkleNode
impl core::hash::Hash for bitcoin::blockdata::constants::ChainHash
impl core::hash::Hash for bitcoin::blockdata::locktime::absolute::LockTime
impl core::hash::Hash for bitcoin::blockdata::locktime::relative::LockTime
@ -2219,6 +2217,8 @@ impl core::hash::Hash for bitcoin::ecdsa::Signature
impl core::hash::Hash for bitcoin::key::SortKey
impl core::hash::Hash for bitcoin::key::TweakedKeypair
impl core::hash::Hash for bitcoin::key::TweakedPublicKey
impl core::hash::Hash for bitcoin::merkle_tree::TxMerkleNode
impl core::hash::Hash for bitcoin::merkle_tree::WitnessMerkleNode
impl core::hash::Hash for bitcoin::network::Network
impl core::hash::Hash for bitcoin::network::NetworkKind
impl core::hash::Hash for bitcoin::p2p::Magic
@ -2291,10 +2291,8 @@ impl core::marker::Copy for bitcoin::bip32::Xpriv
impl core::marker::Copy for bitcoin::bip32::Xpub
impl core::marker::Copy for bitcoin::blockdata::block::BlockHash
impl core::marker::Copy for bitcoin::blockdata::block::Header
impl core::marker::Copy for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Copy for bitcoin::blockdata::block::Version
impl core::marker::Copy for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Copy for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Copy for bitcoin::blockdata::constants::ChainHash
impl core::marker::Copy for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Copy for bitcoin::blockdata::locktime::relative::LockTime
@ -2317,6 +2315,8 @@ impl core::marker::Copy for bitcoin::ecdsa::Signature
impl core::marker::Copy for bitcoin::key::SortKey
impl core::marker::Copy for bitcoin::key::TweakedKeypair
impl core::marker::Copy for bitcoin::key::TweakedPublicKey
impl core::marker::Copy for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Copy for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Copy for bitcoin::network::Network
impl core::marker::Copy for bitcoin::network::NetworkKind
impl core::marker::Copy for bitcoin::p2p::Magic
@ -2388,11 +2388,9 @@ impl core::marker::Freeze for bitcoin::blockdata::block::Bip34Error
impl core::marker::Freeze for bitcoin::blockdata::block::Block
impl core::marker::Freeze for bitcoin::blockdata::block::BlockHash
impl core::marker::Freeze for bitcoin::blockdata::block::Header
impl core::marker::Freeze for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Freeze for bitcoin::blockdata::block::ValidationError
impl core::marker::Freeze for bitcoin::blockdata::block::Version
impl core::marker::Freeze for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Freeze for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Freeze for bitcoin::blockdata::constants::ChainHash
impl core::marker::Freeze for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Freeze for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2453,6 +2451,8 @@ impl core::marker::Freeze for bitcoin::key::TweakedPublicKey
impl core::marker::Freeze for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Freeze for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Freeze for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Freeze for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Freeze for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Freeze for bitcoin::network::Network
impl core::marker::Freeze for bitcoin::network::NetworkKind
impl core::marker::Freeze for bitcoin::network::ParseNetworkError
@ -2565,11 +2565,9 @@ impl core::marker::Send for bitcoin::blockdata::block::Bip34Error
impl core::marker::Send for bitcoin::blockdata::block::Block
impl core::marker::Send for bitcoin::blockdata::block::BlockHash
impl core::marker::Send for bitcoin::blockdata::block::Header
impl core::marker::Send for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Send for bitcoin::blockdata::block::ValidationError
impl core::marker::Send for bitcoin::blockdata::block::Version
impl core::marker::Send for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Send for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Send for bitcoin::blockdata::constants::ChainHash
impl core::marker::Send for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Send for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2630,6 +2628,8 @@ impl core::marker::Send for bitcoin::key::TweakedPublicKey
impl core::marker::Send for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Send for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Send for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Send for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Send for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Send for bitcoin::network::Network
impl core::marker::Send for bitcoin::network::NetworkKind
impl core::marker::Send for bitcoin::network::ParseNetworkError
@ -2739,11 +2739,9 @@ impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Bip34Error
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Block
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::BlockHash
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Header
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::ValidationError
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::Version
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::StructuralPartialEq for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::blockdata::constants::ChainHash
impl core::marker::StructuralPartialEq for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::StructuralPartialEq for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2799,6 +2797,8 @@ impl core::marker::StructuralPartialEq for bitcoin::key::TweakedPublicKey
impl core::marker::StructuralPartialEq for bitcoin::key::UncompressedPublicKeyError
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::StructuralPartialEq for bitcoin::network::Network
impl core::marker::StructuralPartialEq for bitcoin::network::NetworkKind
impl core::marker::StructuralPartialEq for bitcoin::network::ParseNetworkError
@ -2906,11 +2906,9 @@ impl core::marker::Sync for bitcoin::blockdata::block::Bip34Error
impl core::marker::Sync for bitcoin::blockdata::block::Block
impl core::marker::Sync for bitcoin::blockdata::block::BlockHash
impl core::marker::Sync for bitcoin::blockdata::block::Header
impl core::marker::Sync for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Sync for bitcoin::blockdata::block::ValidationError
impl core::marker::Sync for bitcoin::blockdata::block::Version
impl core::marker::Sync for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Sync for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Sync for bitcoin::blockdata::constants::ChainHash
impl core::marker::Sync for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Sync for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -2971,6 +2969,8 @@ impl core::marker::Sync for bitcoin::key::TweakedPublicKey
impl core::marker::Sync for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Sync for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Sync for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Sync for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Sync for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Sync for bitcoin::network::Network
impl core::marker::Sync for bitcoin::network::NetworkKind
impl core::marker::Sync for bitcoin::network::ParseNetworkError
@ -3083,11 +3083,9 @@ impl core::marker::Unpin for bitcoin::blockdata::block::Bip34Error
impl core::marker::Unpin for bitcoin::blockdata::block::Block
impl core::marker::Unpin for bitcoin::blockdata::block::BlockHash
impl core::marker::Unpin for bitcoin::blockdata::block::Header
impl core::marker::Unpin for bitcoin::blockdata::block::TxMerkleNode
impl core::marker::Unpin for bitcoin::blockdata::block::ValidationError
impl core::marker::Unpin for bitcoin::blockdata::block::Version
impl core::marker::Unpin for bitcoin::blockdata::block::WitnessCommitment
impl core::marker::Unpin for bitcoin::blockdata::block::WitnessMerkleNode
impl core::marker::Unpin for bitcoin::blockdata::constants::ChainHash
impl core::marker::Unpin for bitcoin::blockdata::locktime::absolute::LockTime
impl core::marker::Unpin for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3148,6 +3146,8 @@ impl core::marker::Unpin for bitcoin::key::TweakedPublicKey
impl core::marker::Unpin for bitcoin::key::UncompressedPublicKeyError
impl core::marker::Unpin for bitcoin::merkle_tree::MerkleBlockError
impl core::marker::Unpin for bitcoin::merkle_tree::PartialMerkleTree
impl core::marker::Unpin for bitcoin::merkle_tree::TxMerkleNode
impl core::marker::Unpin for bitcoin::merkle_tree::WitnessMerkleNode
impl core::marker::Unpin for bitcoin::network::Network
impl core::marker::Unpin for bitcoin::network::NetworkKind
impl core::marker::Unpin for bitcoin::network::ParseNetworkError
@ -3291,11 +3291,9 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Bip3
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Block
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::BlockHash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Header
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::TxMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::ValidationError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::Version
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::WitnessCommitment
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::block::WitnessMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::constants::ChainHash
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::locktime::absolute::LockTime
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3354,6 +3352,8 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::key::TweakedPublicKey
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::key::UncompressedPublicKeyError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::MerkleBlockError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::PartialMerkleTree
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::TxMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::merkle_tree::WitnessMerkleNode
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::network::Network
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::network::NetworkKind
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::network::ParseNetworkError
@ -3464,11 +3464,9 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Bip34Er
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Block
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::BlockHash
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Header
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::TxMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::ValidationError
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::Version
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::WitnessCommitment
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::block::WitnessMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::constants::ChainHash
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::locktime::absolute::LockTime
impl core::panic::unwind_safe::UnwindSafe for bitcoin::blockdata::locktime::relative::DisabledLockTimeError
@ -3527,6 +3525,8 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin::key::TweakedPublicKey
impl core::panic::unwind_safe::UnwindSafe for bitcoin::key::UncompressedPublicKeyError
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::MerkleBlockError
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::PartialMerkleTree
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::TxMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::merkle_tree::WitnessMerkleNode
impl core::panic::unwind_safe::UnwindSafe for bitcoin::network::Network
impl core::panic::unwind_safe::UnwindSafe for bitcoin::network::NetworkKind
impl core::panic::unwind_safe::UnwindSafe for bitcoin::network::ParseNetworkError
@ -3610,9 +3610,7 @@ impl core::str::traits::FromStr for bitcoin::bip32::XKeyIdentifier
impl core::str::traits::FromStr for bitcoin::bip32::Xpriv
impl core::str::traits::FromStr for bitcoin::bip32::Xpub
impl core::str::traits::FromStr for bitcoin::blockdata::block::BlockHash
impl core::str::traits::FromStr for bitcoin::blockdata::block::TxMerkleNode
impl core::str::traits::FromStr for bitcoin::blockdata::block::WitnessCommitment
impl core::str::traits::FromStr for bitcoin::blockdata::block::WitnessMerkleNode
impl core::str::traits::FromStr for bitcoin::blockdata::constants::ChainHash
impl core::str::traits::FromStr for bitcoin::blockdata::locktime::absolute::LockTime
impl core::str::traits::FromStr for bitcoin::blockdata::script::ScriptHash
@ -3623,6 +3621,8 @@ impl core::str::traits::FromStr for bitcoin::blockdata::transaction::Sequence
impl core::str::traits::FromStr for bitcoin::blockdata::transaction::Txid
impl core::str::traits::FromStr for bitcoin::blockdata::transaction::Wtxid
impl core::str::traits::FromStr for bitcoin::ecdsa::Signature
impl core::str::traits::FromStr for bitcoin::merkle_tree::TxMerkleNode
impl core::str::traits::FromStr for bitcoin::merkle_tree::WitnessMerkleNode
impl core::str::traits::FromStr for bitcoin::network::Network
impl core::str::traits::FromStr for bitcoin::p2p::Magic
impl core::str::traits::FromStr for bitcoin::psbt::PsbtSighashType
@ -4085,13 +4085,13 @@ impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bit
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::bip158::FilterHeader
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::bip32::XKeyIdentifier
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::BlockHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::TxMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::WitnessCommitment
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::block::WitnessMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::script::ScriptHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::script::WScriptHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::transaction::Txid
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::blockdata::transaction::Wtxid
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::merkle_tree::TxMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::merkle_tree::WitnessMerkleNode
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::taproot::TapLeafHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::taproot::TapNodeHash
impl<I: core::slice::index::SliceIndex<[u8]>> core::ops::index::Index<I> for bitcoin::taproot::TapTweakHash
@ -4322,7 +4322,7 @@ pub bitcoin::block::Bip34Error::Unsupported
pub bitcoin::block::Block::header: bitcoin::blockdata::block::Header
pub bitcoin::block::Block::txdata: alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
pub bitcoin::block::Header::bits: bitcoin::pow::CompactTarget
pub bitcoin::block::Header::merkle_root: bitcoin::blockdata::block::TxMerkleNode
pub bitcoin::block::Header::merkle_root: bitcoin::merkle_tree::TxMerkleNode
pub bitcoin::block::Header::nonce: u32
pub bitcoin::block::Header::prev_blockhash: bitcoin::blockdata::block::BlockHash
pub bitcoin::block::Header::time: u32
@ -4336,7 +4336,7 @@ pub bitcoin::blockdata::block::Bip34Error::Unsupported
pub bitcoin::blockdata::block::Block::header: bitcoin::blockdata::block::Header
pub bitcoin::blockdata::block::Block::txdata: alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>
pub bitcoin::blockdata::block::Header::bits: bitcoin::pow::CompactTarget
pub bitcoin::blockdata::block::Header::merkle_root: bitcoin::blockdata::block::TxMerkleNode
pub bitcoin::blockdata::block::Header::merkle_root: bitcoin::merkle_tree::TxMerkleNode
pub bitcoin::blockdata::block::Header::nonce: u32
pub bitcoin::blockdata::block::Header::prev_blockhash: bitcoin::blockdata::block::BlockHash
pub bitcoin::blockdata::block::Header::time: u32
@ -4810,15 +4810,11 @@ pub const bitcoin::bip32::XKeyIdentifier::LEN: usize
pub const bitcoin::blockdata::block::BlockHash::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::BlockHash::LEN: usize
pub const bitcoin::blockdata::block::Header::SIZE: usize
pub const bitcoin::blockdata::block::TxMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::TxMerkleNode::LEN: usize
pub const bitcoin::blockdata::block::Version::NO_SOFT_FORK_SIGNALLING: Self
pub const bitcoin::blockdata::block::Version::ONE: Self
pub const bitcoin::blockdata::block::Version::TWO: Self
pub const bitcoin::blockdata::block::WitnessCommitment::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::WitnessCommitment::LEN: usize
pub const bitcoin::blockdata::block::WitnessMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::blockdata::block::WitnessMerkleNode::LEN: usize
pub const bitcoin::blockdata::constants::COINBASE_MATURITY: u32 = 100u32
pub const bitcoin::blockdata::constants::ChainHash::BITCOIN: Self
pub const bitcoin::blockdata::constants::ChainHash::REGTEST: Self
@ -5142,6 +5138,10 @@ pub const bitcoin::constants::SCRIPT_ADDRESS_PREFIX_TEST: u8 = 196u8
pub const bitcoin::constants::SUBSIDY_HALVING_INTERVAL: u32 = 210_000u32
pub const bitcoin::constants::TARGET_BLOCK_SPACING: u32 = 600u32
pub const bitcoin::constants::WITNESS_SCALE_FACTOR: units::weight::WITNESS_SCALE_FACTOR
pub const bitcoin::merkle_tree::TxMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::merkle_tree::TxMerkleNode::LEN: usize
pub const bitcoin::merkle_tree::WitnessMerkleNode::DISPLAY_BACKWARD: bool
pub const bitcoin::merkle_tree::WitnessMerkleNode::LEN: usize
pub const bitcoin::opcodes::all::OP_0NOTEQUAL: _
pub const bitcoin::opcodes::all::OP_1ADD: _
pub const bitcoin::opcodes::all::OP_1SUB: _
@ -5908,8 +5908,6 @@ pub fn alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>::consensus_decode_f
pub fn alloc::vec::Vec<bitcoin::blockdata::block::BlockHash>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::Header>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::Header>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::Transaction>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::TxIn>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
@ -5918,6 +5916,8 @@ pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>::consensus_decode
pub fn alloc::vec::Vec<bitcoin::blockdata::transaction::TxOut>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::consensus::encode::VarInt>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::consensus::encode::VarInt>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::taproot::TapLeafHash>::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn alloc::vec::Vec<bitcoin::taproot::TapLeafHash>::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn alloc::vec::Vec<bitcoin::taproot::TapNodeHash>::from(branch: bitcoin::taproot::merkle_branch::TaprootMerkleBranch) -> Self
@ -6617,8 +6617,8 @@ pub fn bitcoin::blockdata::block::Block::check_merkle_root(&self) -> bool
pub fn bitcoin::blockdata::block::Block::check_witness_commitment(&self) -> bool
pub fn bitcoin::blockdata::block::Block::clone(&self) -> bitcoin::blockdata::block::Block
pub fn bitcoin::blockdata::block::Block::coinbase(&self) -> core::option::Option<&bitcoin::blockdata::transaction::Transaction>
pub fn bitcoin::blockdata::block::Block::compute_merkle_root(&self) -> core::option::Option<bitcoin::blockdata::block::TxMerkleNode>
pub fn bitcoin::blockdata::block::Block::compute_witness_commitment(witness_root: &bitcoin::blockdata::block::WitnessMerkleNode, witness_reserved_value: &[u8]) -> bitcoin::blockdata::block::WitnessCommitment
pub fn bitcoin::blockdata::block::Block::compute_merkle_root(&self) -> core::option::Option<bitcoin::merkle_tree::TxMerkleNode>
pub fn bitcoin::blockdata::block::Block::compute_witness_commitment(witness_root: &bitcoin::merkle_tree::WitnessMerkleNode, witness_reserved_value: &[u8]) -> bitcoin::blockdata::block::WitnessCommitment
pub fn bitcoin::blockdata::block::Block::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<bitcoin::blockdata::block::Block, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::Block::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<bitcoin::blockdata::block::Block, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::Block::consensus_encode<R: bitcoin_io::Write + core::marker::Sized>(&self, r: &mut R) -> core::result::Result<usize, bitcoin_io::error::Error>
@ -6626,7 +6626,7 @@ pub fn bitcoin::blockdata::block::Block::eq(&self, other: &bitcoin::blockdata::b
pub fn bitcoin::blockdata::block::Block::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::blockdata::block::Block::total_size(&self) -> usize
pub fn bitcoin::blockdata::block::Block::weight(&self) -> bitcoin_units::weight::Weight
pub fn bitcoin::blockdata::block::Block::witness_root(&self) -> core::option::Option<bitcoin::blockdata::block::WitnessMerkleNode>
pub fn bitcoin::blockdata::block::Block::witness_root(&self) -> core::option::Option<bitcoin::merkle_tree::WitnessMerkleNode>
pub fn bitcoin::blockdata::block::BlockHash::all_zeros() -> Self
pub fn bitcoin::blockdata::block::BlockHash::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::BlockHash::as_byte_array(&self) -> &Self::Bytes
@ -6676,37 +6676,6 @@ pub fn bitcoin::blockdata::block::Header::partial_cmp(&self, other: &bitcoin::bl
pub fn bitcoin::blockdata::block::Header::target(&self) -> bitcoin::pow::Target
pub fn bitcoin::blockdata::block::Header::validate_pow(&self, required_target: bitcoin::pow::Target) -> core::result::Result<bitcoin::blockdata::block::BlockHash, bitcoin::blockdata::block::ValidationError>
pub fn bitcoin::blockdata::block::Header::work(&self) -> bitcoin::pow::Work
pub fn bitcoin::blockdata::block::TxMerkleNode::all_zeros() -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::TxMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::blockdata::block::TxMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::blockdata::block::TxMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::blockdata::block::TxMerkleNode::clone(&self) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::cmp(&self, other: &bitcoin::blockdata::block::TxMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::blockdata::block::TxMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::TxMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::blockdata::block::TxMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::blockdata::block::TxMerkleNode::eq(&self, other: &bitcoin::blockdata::block::TxMerkleNode) -> bool
pub fn bitcoin::blockdata::block::TxMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::blockdata::block::TxMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::from(txid: bitcoin::blockdata::transaction::Txid) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::TxMerkleNode
pub fn bitcoin::blockdata::block::TxMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::blockdata::block::TxMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::blockdata::block::TxMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::blockdata::block::TxMerkleNode, Self::Err>
pub fn bitcoin::blockdata::block::TxMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::blockdata::block::TxMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::blockdata::block::TxMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::blockdata::block::TxMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::blockdata::block::TxMerkleNode::partial_cmp(&self, other: &bitcoin::blockdata::block::TxMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::blockdata::block::TxMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::blockdata::block::TxMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::ValidationError::clone(&self) -> bitcoin::blockdata::block::ValidationError
pub fn bitcoin::blockdata::block::ValidationError::eq(&self, other: &bitcoin::blockdata::block::ValidationError) -> bool
pub fn bitcoin::blockdata::block::ValidationError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
@ -6750,37 +6719,6 @@ pub fn bitcoin::blockdata::block::WitnessCommitment::partial_cmp(&self, other: &
pub fn bitcoin::blockdata::block::WitnessCommitment::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::WitnessCommitment::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::blockdata::block::WitnessCommitment::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::WitnessMerkleNode::all_zeros() -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::blockdata::block::WitnessMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::blockdata::block::WitnessMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::blockdata::block::WitnessMerkleNode::clone(&self) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::cmp(&self, other: &bitcoin::blockdata::block::WitnessMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::blockdata::block::WitnessMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::blockdata::block::WitnessMerkleNode::eq(&self, other: &bitcoin::blockdata::block::WitnessMerkleNode) -> bool
pub fn bitcoin::blockdata::block::WitnessMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from(wtxid: bitcoin::blockdata::transaction::Wtxid) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::blockdata::block::WitnessMerkleNode
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::blockdata::block::WitnessMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::blockdata::block::WitnessMerkleNode, Self::Err>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::blockdata::block::WitnessMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::blockdata::block::WitnessMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::blockdata::block::WitnessMerkleNode::partial_cmp(&self, other: &bitcoin::blockdata::block::WitnessMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::blockdata::block::WitnessMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::blockdata::block::WitnessMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::blockdata::constants::ChainHash::as_byte_array(&self) -> &[u8; 32]
pub fn bitcoin::blockdata::constants::ChainHash::as_bytes(&self) -> &[u8]
pub fn bitcoin::blockdata::constants::ChainHash::as_mut(&mut self) -> &mut [u8; 32]
@ -7778,18 +7716,83 @@ pub fn bitcoin::merkle_tree::MerkleBlockError::clone(&self) -> bitcoin::merkle_t
pub fn bitcoin::merkle_tree::MerkleBlockError::eq(&self, other: &bitcoin::merkle_tree::MerkleBlockError) -> bool
pub fn bitcoin::merkle_tree::MerkleBlockError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::MerkleBlockError::from(never: core::convert::Infallible) -> Self
pub fn bitcoin::merkle_tree::MerkleNode::calculate_root<I: core::iter::traits::iterator::Iterator<Item = Self::Leaf>>(iter: I) -> core::option::Option<Self>
pub fn bitcoin::merkle_tree::MerkleNode::combine(&self, other: &Self) -> Self
pub fn bitcoin::merkle_tree::MerkleNode::from_leaf(leaf: Self::Leaf) -> Self
pub fn bitcoin::merkle_tree::PartialMerkleTree::bits(&self) -> &alloc::vec::Vec<bool>
pub fn bitcoin::merkle_tree::PartialMerkleTree::clone(&self) -> bitcoin::merkle_tree::PartialMerkleTree
pub fn bitcoin::merkle_tree::PartialMerkleTree::consensus_decode_from_finite_reader<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::merkle_tree::PartialMerkleTree::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::merkle_tree::PartialMerkleTree::eq(&self, other: &bitcoin::merkle_tree::PartialMerkleTree) -> bool
pub fn bitcoin::merkle_tree::PartialMerkleTree::extract_matches(&self, matches: &mut alloc::vec::Vec<bitcoin::blockdata::transaction::Txid>, indexes: &mut alloc::vec::Vec<u32>) -> core::result::Result<bitcoin::blockdata::block::TxMerkleNode, bitcoin::merkle_tree::MerkleBlockError>
pub fn bitcoin::merkle_tree::PartialMerkleTree::extract_matches(&self, matches: &mut alloc::vec::Vec<bitcoin::blockdata::transaction::Txid>, indexes: &mut alloc::vec::Vec<u32>) -> core::result::Result<bitcoin::merkle_tree::TxMerkleNode, bitcoin::merkle_tree::MerkleBlockError>
pub fn bitcoin::merkle_tree::PartialMerkleTree::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::PartialMerkleTree::from_txids(txids: &[bitcoin::blockdata::transaction::Txid], matches: &[bool]) -> Self
pub fn bitcoin::merkle_tree::PartialMerkleTree::hashes(&self) -> &alloc::vec::Vec<bitcoin::blockdata::block::TxMerkleNode>
pub fn bitcoin::merkle_tree::PartialMerkleTree::hashes(&self) -> &alloc::vec::Vec<bitcoin::merkle_tree::TxMerkleNode>
pub fn bitcoin::merkle_tree::PartialMerkleTree::num_transactions(&self) -> u32
pub fn bitcoin::merkle_tree::calculate_root<T, I>(hashes: I) -> core::option::Option<T> where T: bitcoin_hashes::Hash + bitcoin::consensus::encode::Encodable, <T as bitcoin_hashes::Hash>::Engine: bitcoin_io::Write, I: core::iter::traits::iterator::Iterator<Item = T>
pub fn bitcoin::merkle_tree::calculate_root_inline<T>(hashes: &mut [T]) -> core::option::Option<T> where T: bitcoin_hashes::Hash + bitcoin::consensus::encode::Encodable, <T as bitcoin_hashes::Hash>::Engine: bitcoin_io::Write
pub fn bitcoin::merkle_tree::TxMerkleNode::all_zeros() -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::merkle_tree::TxMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::merkle_tree::TxMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::merkle_tree::TxMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::merkle_tree::TxMerkleNode::clone(&self) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::cmp(&self, other: &bitcoin::merkle_tree::TxMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::merkle_tree::TxMerkleNode::combine(&self, other: &Self) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::merkle_tree::TxMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::merkle_tree::TxMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::merkle_tree::TxMerkleNode::eq(&self, other: &bitcoin::merkle_tree::TxMerkleNode) -> bool
pub fn bitcoin::merkle_tree::TxMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::TxMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::from_leaf(leaf: Self::Leaf) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::TxMerkleNode
pub fn bitcoin::merkle_tree::TxMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::merkle_tree::TxMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::merkle_tree::TxMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::merkle_tree::TxMerkleNode, Self::Err>
pub fn bitcoin::merkle_tree::TxMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::merkle_tree::TxMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::merkle_tree::TxMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::merkle_tree::TxMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::merkle_tree::TxMerkleNode::partial_cmp(&self, other: &bitcoin::merkle_tree::TxMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::merkle_tree::TxMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::merkle_tree::TxMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::merkle_tree::WitnessMerkleNode::all_zeros() -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_byte_array(&self) -> &<bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_byte_array(&self) -> &Self::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_raw_hash(&self) -> &bitcoin_hashes::sha256d::Hash
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_ref(&self) -> &[u8; 32]
pub fn bitcoin::merkle_tree::WitnessMerkleNode::as_ref(&self) -> &[u8]
pub fn bitcoin::merkle_tree::WitnessMerkleNode::borrow(&self) -> &[u8]
pub fn bitcoin::merkle_tree::WitnessMerkleNode::clone(&self) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::cmp(&self, other: &bitcoin::merkle_tree::WitnessMerkleNode) -> core::cmp::Ordering
pub fn bitcoin::merkle_tree::WitnessMerkleNode::combine(&self, other: &Self) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::consensus_decode<R: bitcoin_io::BufRead + core::marker::Sized>(r: &mut R) -> core::result::Result<Self, bitcoin::consensus::encode::Error>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::consensus_encode<W: bitcoin_io::Write + core::marker::Sized>(&self, w: &mut W) -> core::result::Result<usize, bitcoin_io::error::Error>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::engine() -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub fn bitcoin::merkle_tree::WitnessMerkleNode::eq(&self, other: &bitcoin::merkle_tree::WitnessMerkleNode) -> bool
pub fn bitcoin::merkle_tree::WitnessMerkleNode::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_byte_array(bytes: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_byte_array(bytes: Self::Bytes) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_engine(e: <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_leaf(leaf: Self::Leaf) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_raw_hash(inner: bitcoin_hashes::sha256d::Hash) -> bitcoin::merkle_tree::WitnessMerkleNode
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_slice(sl: &[u8]) -> core::result::Result<bitcoin::merkle_tree::WitnessMerkleNode, bitcoin_hashes::FromSliceError>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::from_str(s: &str) -> core::result::Result<bitcoin::merkle_tree::WitnessMerkleNode, Self::Err>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::hash(data: &[u8]) -> Self
pub fn bitcoin::merkle_tree::WitnessMerkleNode::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin::merkle_tree::WitnessMerkleNode::hash_byte_chunks<B, I>(byte_slices: I) -> Self where B: core::convert::AsRef<[u8]>, I: core::iter::traits::collect::IntoIterator<Item = B>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::index(&self, index: I) -> &Self::Output
pub fn bitcoin::merkle_tree::WitnessMerkleNode::partial_cmp(&self, other: &bitcoin::merkle_tree::WitnessMerkleNode) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin::merkle_tree::WitnessMerkleNode::to_byte_array(self) -> <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::to_byte_array(self) -> Self::Bytes
pub fn bitcoin::merkle_tree::WitnessMerkleNode::to_raw_hash(self) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin::network::Network::as_ref(&self) -> &bitcoin::consensus::params::Params
pub fn bitcoin::network::Network::chain_hash(self) -> bitcoin::blockdata::constants::ChainHash
pub fn bitcoin::network::Network::clone(&self) -> bitcoin::network::Network
@ -8602,11 +8605,11 @@ pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::SegwitV0Sighash) -
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::bip158::FilterHash) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::bip158::FilterHeader) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::BlockHash) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::TxMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::WitnessCommitment) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::block::WitnessMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::transaction::Txid) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::blockdata::transaction::Wtxid) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::merkle_tree::TxMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256d::Hash::from(hashtype: bitcoin::merkle_tree::WitnessMerkleNode) -> bitcoin_hashes::sha256d::Hash
pub fn bitcoin_hashes::sha256t::Hash<bitcoin::TapSighashTag>::from(hashtype: bitcoin::TapSighash) -> bitcoin_hashes::sha256t::Hash<bitcoin::TapSighashTag>
pub fn bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapBranchTag>::from(hashtype: bitcoin::taproot::TapNodeHash) -> bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapBranchTag>
pub fn bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapLeafTag>::from(hashtype: bitcoin::taproot::TapLeafHash) -> bitcoin_hashes::sha256t::Hash<bitcoin::taproot::TapLeafTag>
@ -8798,17 +8801,13 @@ pub struct bitcoin::bip32::Xpub
pub struct bitcoin::block::Block
pub struct bitcoin::block::BlockHash(_)
pub struct bitcoin::block::Header
pub struct bitcoin::block::TxMerkleNode(_)
pub struct bitcoin::block::Version(_)
pub struct bitcoin::block::WitnessCommitment(_)
pub struct bitcoin::block::WitnessMerkleNode(_)
pub struct bitcoin::blockdata::block::Block
pub struct bitcoin::blockdata::block::BlockHash(_)
pub struct bitcoin::blockdata::block::Header
pub struct bitcoin::blockdata::block::TxMerkleNode(_)
pub struct bitcoin::blockdata::block::Version(_)
pub struct bitcoin::blockdata::block::WitnessCommitment(_)
pub struct bitcoin::blockdata::block::WitnessMerkleNode(_)
pub struct bitcoin::blockdata::constants::ChainHash(_)
pub struct bitcoin::blockdata::locktime::relative::DisabledLockTimeError(_)
pub struct bitcoin::blockdata::opcodes::Opcode
@ -8864,6 +8863,8 @@ pub struct bitcoin::key::WPubkeyHash(_)
pub struct bitcoin::locktime::relative::DisabledLockTimeError(_)
pub struct bitcoin::merkle_tree::MerkleBlock
pub struct bitcoin::merkle_tree::PartialMerkleTree
pub struct bitcoin::merkle_tree::TxMerkleNode(_)
pub struct bitcoin::merkle_tree::WitnessMerkleNode(_)
pub struct bitcoin::opcodes::Opcode
pub struct bitcoin::p2p::Magic(_)
pub struct bitcoin::p2p::ServiceFlags(_)
@ -8949,6 +8950,7 @@ pub trait bitcoin::consensus::encode::Encodable
pub trait bitcoin::consensus::encode::ReadExt: bitcoin_io::Read
pub trait bitcoin::consensus::encode::WriteExt: bitcoin_io::Write
pub trait bitcoin::key::TapTweak
pub trait bitcoin::merkle_tree::MerkleNode: core::marker::Copy
pub trait bitcoin::psbt::GetKey
pub trait bitcoin::script::PushBytesErrorReport
pub type &'a bitcoin::bip32::DerivationPath::IntoIter = core::slice::iter::Iter<'a, bitcoin::bip32::ChildNumber>
@ -9031,18 +9033,10 @@ pub type bitcoin::blockdata::block::BlockHash::Bytes = <bitcoin_hashes::sha256d:
pub type bitcoin::blockdata::block::BlockHash::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::BlockHash::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::BlockHash::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::block::TxMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::blockdata::block::TxMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::TxMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::TxMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::block::WitnessCommitment::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::blockdata::block::WitnessCommitment::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::WitnessCommitment::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::WitnessCommitment::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::block::WitnessMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::blockdata::block::WitnessMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::blockdata::block::WitnessMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::block::WitnessMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::blockdata::constants::ChainHash::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::blockdata::constants::ChainHash::Error = core::array::TryFromSliceError
pub type bitcoin::blockdata::constants::ChainHash::Output = <[u8] as core::ops::index::Index<I>>::Output
@ -9094,6 +9088,17 @@ pub type bitcoin::key::UntweakedKeypair::TweakedKey = bitcoin::key::TweakedKeypa
pub type bitcoin::key::UntweakedPublicKey = secp256k1::key::XOnlyPublicKey
pub type bitcoin::key::UntweakedPublicKey::TweakedAux = (bitcoin::key::TweakedPublicKey, secp256k1::key::Parity)
pub type bitcoin::key::UntweakedPublicKey::TweakedKey = bitcoin::key::TweakedPublicKey
pub type bitcoin::merkle_tree::MerkleNode::Leaf
pub type bitcoin::merkle_tree::TxMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::merkle_tree::TxMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::merkle_tree::TxMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::merkle_tree::TxMerkleNode::Leaf = bitcoin::blockdata::transaction::Txid
pub type bitcoin::merkle_tree::TxMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::merkle_tree::WitnessMerkleNode::Bytes = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Bytes
pub type bitcoin::merkle_tree::WitnessMerkleNode::Engine = <bitcoin_hashes::sha256d::Hash as bitcoin_hashes::Hash>::Engine
pub type bitcoin::merkle_tree::WitnessMerkleNode::Err = hex_conservative::error::HexToArrayError
pub type bitcoin::merkle_tree::WitnessMerkleNode::Leaf = bitcoin::blockdata::transaction::Wtxid
pub type bitcoin::merkle_tree::WitnessMerkleNode::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
pub type bitcoin::network::Network::Err = bitcoin::network::ParseNetworkError
pub type bitcoin::network::Network::Error = bitcoin::network::UnknownChainHashError
pub type bitcoin::network::Network::Error = bitcoin::p2p::UnknownMagicError

View File

@ -374,10 +374,10 @@ mod test {
use hex::FromHex;
use super::*;
use crate::blockdata::block::TxMerkleNode;
use crate::blockdata::locktime::absolute;
use crate::blockdata::transaction;
use crate::consensus::encode::{deserialize, serialize};
use crate::merkle_tree::TxMerkleNode;
use crate::{Amount, CompactTarget, OutPoint, ScriptBuf, Sequence, TxIn, TxOut, Txid, Witness};
fn dummy_tx(nonce: &[u8]) -> Transaction {

View File

@ -14,34 +14,21 @@ use io::{BufRead, Write};
use super::Weight;
use crate::blockdata::script;
use crate::blockdata::transaction::{Transaction, Txid, Wtxid};
use crate::blockdata::transaction::{Transaction, Wtxid};
use crate::consensus::{encode, Decodable, Encodable, Params};
use crate::internal_macros::{impl_consensus_encoding, impl_hashencode};
use crate::merkle_tree::{MerkleNode as _, TxMerkleNode, WitnessMerkleNode};
use crate::pow::{CompactTarget, Target, Work};
use crate::prelude::*;
use crate::{merkle_tree, VarInt};
use crate::VarInt;
hashes::hash_newtype! {
/// A bitcoin block hash.
pub struct BlockHash(sha256d::Hash);
/// A hash of the Merkle tree branch or root for transactions.
pub struct TxMerkleNode(sha256d::Hash);
/// A hash corresponding to the Merkle tree root for witness data.
pub struct WitnessMerkleNode(sha256d::Hash);
/// A hash corresponding to the witness structure commitment in the coinbase transaction.
pub struct WitnessCommitment(sha256d::Hash);
}
impl_hashencode!(BlockHash);
impl_hashencode!(TxMerkleNode);
impl_hashencode!(WitnessMerkleNode);
impl From<Txid> for TxMerkleNode {
fn from(txid: Txid) -> Self { Self::from_byte_array(txid.to_byte_array()) }
}
impl From<Wtxid> for WitnessMerkleNode {
fn from(wtxid: Wtxid) -> Self { Self::from_byte_array(wtxid.to_byte_array()) }
}
/// Bitcoin block header.
///
@ -293,8 +280,8 @@ impl Block {
/// Computes the transaction merkle root.
pub fn compute_merkle_root(&self) -> Option<TxMerkleNode> {
let hashes = self.txdata.iter().map(|obj| obj.compute_txid().to_raw_hash());
merkle_tree::calculate_root(hashes).map(|h| h.into())
let hashes = self.txdata.iter().map(|obj| obj.compute_txid());
TxMerkleNode::calculate_root(hashes)
}
/// Computes the witness commitment for the block's transaction list.
@ -313,12 +300,12 @@ impl Block {
let hashes = self.txdata.iter().enumerate().map(|(i, t)| {
if i == 0 {
// Replace the first hash with zeroes.
Wtxid::all_zeros().to_raw_hash()
Wtxid::all_zeros()
} else {
t.compute_wtxid().to_raw_hash()
t.compute_wtxid()
}
});
merkle_tree::calculate_root(hashes).map(|h| h.into())
WitnessMerkleNode::calculate_root(hashes)
}
/// Returns the weight of the block.

View File

@ -23,9 +23,10 @@ use io::{BufRead, Cursor, Read, Write};
use crate::bip152::{PrefilledTransaction, ShortId};
use crate::bip158::{FilterHash, FilterHeader};
use crate::blockdata::block::{self, BlockHash, TxMerkleNode};
use crate::blockdata::block::{self, BlockHash};
use crate::blockdata::transaction::{Transaction, TxIn, TxOut};
use crate::consensus::{DecodeError, IterReader};
use crate::merkle_tree::TxMerkleNode;
#[cfg(feature = "std")]
use crate::p2p::{
address::{AddrV2Message, Address},

View File

@ -116,7 +116,7 @@ pub use crate::{
amount::{Amount, Denomination, SignedAmount},
bip158::{FilterHash, FilterHeader},
bip32::XKeyIdentifier,
blockdata::block::{self, Block, BlockHash, TxMerkleNode, WitnessMerkleNode, WitnessCommitment},
blockdata::block::{self, Block, BlockHash, WitnessCommitment},
blockdata::constants,
blockdata::fee_rate::FeeRate,
blockdata::locktime::{self, absolute, relative},
@ -132,7 +132,7 @@ pub use crate::{
crypto::ecdsa,
crypto::key::{self, PrivateKey, PubkeyHash, PublicKey, CompressedPublicKey, WPubkeyHash, XOnlyPublicKey},
crypto::sighash::{self, LegacySighash, SegwitV0Sighash, TapSighash, TapSighashTag},
merkle_tree::MerkleBlock,
merkle_tree::{MerkleBlock, TxMerkleNode, WitnessMerkleNode},
network::{Network, NetworkKind},
pow::{CompactTarget, Target, Work},
psbt::Psbt,

View File

@ -14,10 +14,11 @@ use core::fmt;
use io::{BufRead, Write};
use self::MerkleBlockError::*;
use crate::blockdata::block::{self, Block, TxMerkleNode};
use crate::blockdata::block::{self, Block};
use crate::blockdata::transaction::{Transaction, Txid};
use crate::blockdata::weight::Weight;
use crate::consensus::encode::{self, Decodable, Encodable, MAX_VEC_SIZE};
use crate::merkle_tree::{MerkleNode as _, TxMerkleNode};
use crate::prelude::*;
/// Data structure that represents a block header paired to a partial merkle tree.
@ -272,7 +273,7 @@ impl PartialMerkleTree {
if hash_used != self.hashes.len() as u32 {
return Err(NotAllHashesConsumed);
}
Ok(TxMerkleNode::from_byte_array(hash_merkle_root.to_byte_array()))
Ok(hash_merkle_root)
}
/// Calculates the height of the tree.
@ -306,7 +307,7 @@ impl PartialMerkleTree {
left
};
// Combine subhashes
PartialMerkleTree::parent_hash(left, right)
left.combine(&right)
}
}
@ -393,17 +394,9 @@ impl PartialMerkleTree {
right = left;
}
// and combine them before returning
Ok(PartialMerkleTree::parent_hash(left, right))
Ok(left.combine(&right))
}
}
/// Helper method to produce SHA256D(left + right)
fn parent_hash(left: TxMerkleNode, right: TxMerkleNode) -> TxMerkleNode {
let mut encoder = TxMerkleNode::engine();
left.consensus_encode(&mut encoder).expect("engines don't error");
right.consensus_encode(&mut encoder).expect("engines don't error");
TxMerkleNode::from_engine(encoder)
}
}
impl Encodable for PartialMerkleTree {
@ -514,7 +507,7 @@ impl std::error::Error for MerkleBlockError {
#[cfg(test)]
mod tests {
#[cfg(feature = "rand-std")]
use {crate::merkle_tree, core::cmp, secp256k1::rand::prelude::*};
use {core::cmp, secp256k1::rand::prelude::*};
use super::*;
use crate::consensus::encode;
@ -562,9 +555,8 @@ mod tests {
.collect::<Vec<_>>();
// Calculate the merkle root and height
let hashes = tx_ids.iter().map(|t| t.to_raw_hash());
let merkle_root_1: TxMerkleNode =
merkle_tree::calculate_root(hashes).expect("hashes is not empty").into();
let hashes = tx_ids.iter().copied();
let merkle_root_1 = TxMerkleNode::calculate_root(hashes).expect("hashes is not empty");
let mut height = 1;
let mut ntx = tx_count;
while ntx > 1 {

View File

@ -5,137 +5,136 @@
//! # Examples
//!
//! ```
//! # use bitcoin::{merkle_tree, Txid};
//! # use bitcoin::Txid;
//! # use bitcoin::merkle_tree::{MerkleNode as _, TxMerkleNode};
//! # use bitcoin::hashes::Hash;
//! # let tx1 = Txid::all_zeros(); // Dummy hash values.
//! # let tx2 = Txid::all_zeros();
//! let tx_hashes = vec![tx1, tx2]; // All the hashes we wish to merkelize.
//! let root = merkle_tree::calculate_root(tx_hashes.into_iter());
//! let root = TxMerkleNode::calculate_root(tx_hashes.into_iter());
//! ```
mod block;
use core::cmp::min;
use core::iter;
use hashes::{sha256d, HashEngine as _};
use hashes::Hash;
use io::Write;
use crate::consensus::encode::Encodable;
use crate::internal_macros::impl_hashencode;
use crate::prelude::*;
use crate::{Txid, Wtxid};
#[rustfmt::skip]
#[doc(inline)]
pub use self::block::{MerkleBlock, MerkleBlockError, PartialMerkleTree};
/// Calculates the merkle root of a list of *hashes*, inline (in place) in `hashes`.
hashes::hash_newtype! {
/// A hash of the Merkle tree branch or root for transactions.
pub struct TxMerkleNode(sha256d::Hash);
/// A hash corresponding to the Merkle tree root for witness data.
pub struct WitnessMerkleNode(sha256d::Hash);
}
impl_hashencode!(TxMerkleNode);
impl_hashencode!(WitnessMerkleNode);
/// A node in a Merkle tree of transactions or witness data within a block.
///
/// In most cases, you'll want to use [`calculate_root`] instead. Please note, calling this function
/// trashes the data in `hashes` (i.e. the `hashes` is left in an undefined state at conclusion of
/// this method and should not be used again afterwards).
/// This trait is used to compute the transaction Merkle root contained in
/// a block header. This is a particularly weird algorithm -- it interprets
/// the list of transactions as a balanced binary tree, duplicating branches
/// as needed to fill out the tree to a power of two size.
///
/// # Returns
/// Other Merkle trees in Bitcoin, such as those used in Taproot commitments,
/// do not use this algorithm and cannot use this trait.
pub trait MerkleNode: Copy {
/// The hash (TXID or WTXID) of a transaciton in the tree.
type Leaf;
/// Convert a hash to a leaf node of the tree.
fn from_leaf(leaf: Self::Leaf) -> Self;
/// Combine two nodes to get a single node. The final node of a tree is called the "root".
fn combine(&self, other: &Self) -> Self;
/// Given an iterator of leaves, compute the Merkle root.
///
/// - `None` if `hashes` is empty. The merkle root of an empty tree of hashes is undefined.
/// - `Some(hash)` if `hashes` contains one element. A single hash is by definition the merkle root.
/// - `Some(merkle_root)` if length of `hashes` is greater than one.
pub fn calculate_root_inline<T>(hashes: &mut [T]) -> Option<T>
where
T: Hash + Encodable,
<T as Hash>::Engine: Write,
{
match hashes.len() {
0 => None,
1 => Some(hashes[0]),
_ => Some(merkle_root_r(hashes)),
/// Returns `None` iff the iterator was empty.
fn calculate_root<I: Iterator<Item = Self::Leaf>>(iter: I) -> Option<Self> {
let mut stack = Vec::<(usize, Self)>::with_capacity(32);
// Start with a standard Merkle tree root computation...
for (mut n, leaf) in iter.enumerate() {
stack.push((0, Self::from_leaf(leaf)));
while n & 1 == 1 {
let right = stack.pop().unwrap();
let left = stack.pop().unwrap();
debug_assert_eq!(left.0, right.0);
stack.push((left.0 + 1, left.1.combine(&right.1)));
n >>= 1;
}
}
// ...then, deal with incomplete trees. Bitcoin does a weird thing in
// which it doubles-up nodes of the tree to fill out the tree, rather
// than treating incomplete branches specially. This, along with its
// conflation of leaves with leaf hashes, makes its Merkle tree
// construction theoretically (though probably not practically)
// vulnerable to collisions. This is consensus logic so we just have
// to accept it.
while stack.len() > 1 {
let mut right = stack.pop().unwrap();
let left = stack.pop().unwrap();
while right.0 != left.0 {
assert!(right.0 < left.0);
right = (right.0 + 1, right.1.combine(&right.1)); // combine with self
}
stack.push((left.0 + 1, left.1.combine(&right.1)));
}
stack.pop().map(|(_, h)| h)
}
}
/// Calculates the merkle root of an iterator of *hashes*.
///
/// # Returns
///
/// - `None` if `hashes` is empty. The merkle root of an empty tree of hashes is undefined.
/// - `Some(hash)` if `hashes` contains one element. A single hash is by definition the merkle root.
/// - `Some(merkle_root)` if length of `hashes` is greater than one.
pub fn calculate_root<T, I>(mut hashes: I) -> Option<T>
where
T: Hash + Encodable,
<T as Hash>::Engine: Write,
I: Iterator<Item = T>,
{
let first = hashes.next()?;
let second = match hashes.next() {
Some(second) => second,
None => return Some(first),
};
// These two impl blocks are identical. FIXME once we have nailed down
// our hash traits, it should be possible to put bounds on `MerkleNode`
// and `MerkleNode::Leaf` which are sufficient to turn both methods into
// provided methods in the trait definition.
impl MerkleNode for TxMerkleNode {
type Leaf = Txid;
fn from_leaf(leaf: Self::Leaf) -> Self { Self::from_byte_array(leaf.to_byte_array()) }
let mut hashes = iter::once(first).chain(iter::once(second)).chain(hashes);
// We need a local copy to pass to `merkle_root_r`. It's more efficient to do the first loop of
// processing as we make the copy instead of copying the whole iterator.
let (min, max) = hashes.size_hint();
let mut alloc = Vec::with_capacity(max.unwrap_or(min) / 2 + 1);
while let Some(hash1) = hashes.next() {
// If the size is odd, use the last element twice.
let hash2 = hashes.next().unwrap_or(hash1);
let mut encoder = T::engine();
hash1.consensus_encode(&mut encoder).expect("in-memory writers don't error");
hash2.consensus_encode(&mut encoder).expect("in-memory writers don't error");
alloc.push(T::from_engine(encoder));
fn combine(&self, other: &Self) -> Self {
let mut encoder = sha256d::Hash::engine();
encoder.input(self.as_byte_array());
encoder.input(other.as_byte_array());
Self(sha256d::Hash::from_engine(encoder))
}
Some(merkle_root_r(&mut alloc))
}
impl MerkleNode for WitnessMerkleNode {
type Leaf = Wtxid;
fn from_leaf(leaf: Self::Leaf) -> Self { Self::from_byte_array(leaf.to_byte_array()) }
// `hashes` must contain at least one hash.
fn merkle_root_r<T>(hashes: &mut [T]) -> T
where
T: Hash + Encodable,
<T as Hash>::Engine: Write,
{
if hashes.len() == 1 {
return hashes[0];
fn combine(&self, other: &Self) -> Self {
let mut encoder = sha256d::Hash::engine();
encoder.input(self.as_byte_array());
encoder.input(other.as_byte_array());
Self(sha256d::Hash::from_engine(encoder))
}
for idx in 0..((hashes.len() + 1) / 2) {
let idx1 = 2 * idx;
let idx2 = min(idx1 + 1, hashes.len() - 1);
let mut encoder = T::engine();
hashes[idx1].consensus_encode(&mut encoder).expect("in-memory writers don't error");
hashes[idx2].consensus_encode(&mut encoder).expect("in-memory writers don't error");
hashes[idx] = T::from_engine(encoder);
}
let half_len = hashes.len() / 2 + hashes.len() % 2;
merkle_root_r(&mut hashes[0..half_len])
}
#[cfg(test)]
mod tests {
use hashes::sha256d;
use super::*;
use crate::blockdata::block::Block;
use crate::consensus::encode::deserialize;
#[test]
fn both_merkle_root_functions_return_the_same_result() {
fn static_vector() {
// testnet block 000000000000045e0b1660b6445b5e5c5ab63c9a4f956be7e1e69be04fa4497b
let segwit_block = include_bytes!("../../tests/data/testnet_block_000000000000045e0b1660b6445b5e5c5ab63c9a4f956be7e1e69be04fa4497b.raw");
let block: Block = deserialize(&segwit_block[..]).expect("Failed to deserialize block");
assert!(block.check_merkle_root()); // Sanity check.
let hashes_iter = block.txdata.iter().map(|obj| obj.compute_txid().to_raw_hash());
assert!(block.check_merkle_root());
let mut hashes_array = [sha256d::Hash::all_zeros(); 15];
for (i, hash) in hashes_iter.clone().enumerate() {
hashes_array[i] = hash;
}
let from_iter = calculate_root(hashes_iter);
let from_array = calculate_root_inline(&mut hashes_array);
assert_eq!(from_iter, from_array);
// Same as `block.check_merkle_root` but do it explicitly.
let hashes_iter = block.txdata.iter().map(|obj| obj.compute_txid());
let from_iter = TxMerkleNode::calculate_root(hashes_iter.clone());
assert_eq!(from_iter, Some(block.header.merkle_root));
}
}