Merge rust-bitcoin/rust-bitcoin#2886: taproot: Split errors up
6a7f780018
api: Run just check-api (Tobin C. Harding)0c9223ac05
Manually format write_err statement (Tobin C. Harding)43d7c750cc
taproot: Add error types (Tobin C. Harding)afe41c8a39
taproot: Split errors up (Tobin C. Harding) Pull request description: Currently there are a couple of errors in the `taproot` module that are too general, resulting in functions that return a general error type when a specific one would do. Split two errors out and use them for for enum variants and function returns as possible. Done as part of #2883 ACKs for top commit: Kixunil: ACK6a7f780018
apoelstra: ACK6a7f780018
Tree-SHA512: bf5ed50dd8f913280d007f03124c7918c4b6cd642e67726bc3ffff23d9897f764a4391e167115668c3a1e951197485eba280fdbb8a0ce1bb7efb051388d13997
This commit is contained in:
commit
6e1fe5e1c1
|
@ -427,6 +427,10 @@ impl bitcoin::taproot::ControlBlock
|
|||
impl bitcoin::taproot::FutureLeafVersion
|
||||
impl bitcoin::taproot::HiddenNodesError
|
||||
impl bitcoin::taproot::IncompleteBuilderError
|
||||
impl bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl bitcoin::taproot::LeafNode
|
||||
impl bitcoin::taproot::LeafVersion
|
||||
impl bitcoin::taproot::NodeInfo
|
||||
|
@ -715,6 +719,10 @@ impl core::clone::Clone for bitcoin::taproot::ControlBlock
|
|||
impl core::clone::Clone for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::clone::Clone for bitcoin::taproot::HiddenNodesError
|
||||
impl core::clone::Clone for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::clone::Clone for bitcoin::taproot::LeafNode
|
||||
impl core::clone::Clone for bitcoin::taproot::LeafVersion
|
||||
impl core::clone::Clone for bitcoin::taproot::NodeInfo
|
||||
|
@ -916,6 +924,10 @@ impl core::cmp::Eq for bitcoin::taproot::ControlBlock
|
|||
impl core::cmp::Eq for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::cmp::Eq for bitcoin::taproot::HiddenNodesError
|
||||
impl core::cmp::Eq for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::cmp::Eq for bitcoin::taproot::LeafNode
|
||||
impl core::cmp::Eq for bitcoin::taproot::LeafVersion
|
||||
impl core::cmp::Eq for bitcoin::taproot::NodeInfo
|
||||
|
@ -1205,6 +1217,10 @@ impl core::cmp::PartialEq for bitcoin::taproot::ControlBlock
|
|||
impl core::cmp::PartialEq for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::HiddenNodesError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::LeafNode
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::LeafVersion
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::NodeInfo
|
||||
|
@ -1874,6 +1890,11 @@ impl core::convert::From<bitcoin::sighash::PrevoutsIndexError> for bitcoin::sigh
|
|||
impl core::convert::From<bitcoin::sighash::PrevoutsKindError> for bitcoin::sighash::TaprootError
|
||||
impl core::convert::From<bitcoin::sighash::PrevoutsSizeError> for bitcoin::sighash::TaprootError
|
||||
impl core::convert::From<bitcoin::sighash::TaprootError> for bitcoin::psbt::SignError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidControlBlockSizeError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidMerkleBranchSizeError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidMerkleTreeDepthError> for bitcoin::taproot::TaprootBuilderError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidMerkleTreeDepthError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidTaprootLeafVersionError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::LeafNode> for bitcoin::taproot::TapNodeHash
|
||||
impl core::convert::From<bitcoin::taproot::Signature> for bitcoin::taproot::serialized_signature::SerializedSignature
|
||||
impl core::convert::From<bitcoin::taproot::TapLeafHash> for bitcoin::taproot::TapNodeHash
|
||||
|
@ -1946,6 +1967,10 @@ impl core::convert::From<core::convert::Infallible> for bitcoin::sighash::Taproo
|
|||
impl core::convert::From<core::convert::Infallible> for bitcoin::sign_message::MessageSignatureError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::HiddenNodesError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::SigFromSliceError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::TaprootBuilderError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::TaprootError
|
||||
|
@ -2085,6 +2110,10 @@ impl core::error::Error for bitcoin::sighash::TaprootError
|
|||
impl core::error::Error for bitcoin::sign_message::MessageSignatureError
|
||||
impl core::error::Error for bitcoin::taproot::HiddenNodesError
|
||||
impl core::error::Error for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::error::Error for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::error::Error for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::error::Error for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::error::Error for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::error::Error for bitcoin::taproot::SigFromSliceError
|
||||
impl core::error::Error for bitcoin::taproot::TaprootBuilderError
|
||||
impl core::error::Error for bitcoin::taproot::TaprootError
|
||||
|
@ -2274,6 +2303,10 @@ impl core::fmt::Debug for bitcoin::taproot::ControlBlock
|
|||
impl core::fmt::Debug for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::fmt::Debug for bitcoin::taproot::HiddenNodesError
|
||||
impl core::fmt::Debug for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::fmt::Debug for bitcoin::taproot::LeafNode
|
||||
impl core::fmt::Debug for bitcoin::taproot::LeafVersion
|
||||
impl core::fmt::Debug for bitcoin::taproot::NodeInfo
|
||||
|
@ -2414,6 +2447,10 @@ impl core::fmt::Display for bitcoin::sign_message::MessageSignatureError
|
|||
impl core::fmt::Display for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::fmt::Display for bitcoin::taproot::HiddenNodesError
|
||||
impl core::fmt::Display for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::fmt::Display for bitcoin::taproot::LeafVersion
|
||||
impl core::fmt::Display for bitcoin::taproot::SigFromSliceError
|
||||
impl core::fmt::Display for bitcoin::taproot::TapLeafHash
|
||||
|
@ -2873,6 +2910,10 @@ impl core::marker::Freeze for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Freeze for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Freeze for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Freeze for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Freeze for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Freeze for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Freeze for bitcoin::taproot::NodeInfo
|
||||
|
@ -3085,6 +3126,10 @@ impl core::marker::Send for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Send for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Send for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Send for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Send for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Send for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Send for bitcoin::taproot::NodeInfo
|
||||
|
@ -3285,6 +3330,10 @@ impl core::marker::StructuralPartialEq for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::StructuralPartialEq for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::LeafNode
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::SigFromSliceError
|
||||
|
@ -3493,6 +3542,10 @@ impl core::marker::Sync for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Sync for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Sync for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Sync for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Sync for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Sync for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Sync for bitcoin::taproot::NodeInfo
|
||||
|
@ -3705,6 +3758,10 @@ impl core::marker::Unpin for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Unpin for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Unpin for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Unpin for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Unpin for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Unpin for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Unpin for bitcoin::taproot::NodeInfo
|
||||
|
@ -3944,6 +4001,10 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::ControlBlock
|
|||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::HiddenNodesError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::LeafNode
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::LeafVersion
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::NodeInfo
|
||||
|
@ -4151,6 +4212,10 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::ControlBlock
|
|||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::HiddenNodesError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::LeafNode
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::LeafVersion
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::NodeInfo
|
||||
|
@ -5637,15 +5702,15 @@ pub bitcoin::taproot::Signature::signature: secp256k1::schnorr::Signature
|
|||
pub bitcoin::taproot::TapLeaf::Hidden(bitcoin::taproot::TapNodeHash)
|
||||
pub bitcoin::taproot::TapLeaf::Script(bitcoin::blockdata::script::ScriptBuf, bitcoin::taproot::LeafVersion)
|
||||
pub bitcoin::taproot::TaprootBuilderError::EmptyTree
|
||||
pub bitcoin::taproot::TaprootBuilderError::InvalidMerkleTreeDepth(usize)
|
||||
pub bitcoin::taproot::TaprootBuilderError::InvalidMerkleTreeDepth(bitcoin::taproot::InvalidMerkleTreeDepthError)
|
||||
pub bitcoin::taproot::TaprootBuilderError::NodeNotInDfsOrder
|
||||
pub bitcoin::taproot::TaprootBuilderError::OverCompleteTree
|
||||
pub bitcoin::taproot::TaprootError::EmptyTree
|
||||
pub bitcoin::taproot::TaprootError::InvalidControlBlockSize(usize)
|
||||
pub bitcoin::taproot::TaprootError::InvalidControlBlockSize(bitcoin::taproot::InvalidControlBlockSizeError)
|
||||
pub bitcoin::taproot::TaprootError::InvalidInternalKey(secp256k1::Error)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleBranchSize(usize)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleTreeDepth(usize)
|
||||
pub bitcoin::taproot::TaprootError::InvalidTaprootLeafVersion(u8)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleBranchSize(bitcoin::taproot::InvalidMerkleBranchSizeError)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleTreeDepth(bitcoin::taproot::InvalidMerkleTreeDepthError)
|
||||
pub bitcoin::taproot::TaprootError::InvalidTaprootLeafVersion(bitcoin::taproot::InvalidTaprootLeafVersionError)
|
||||
pub bitcoin::transaction::IndexOutOfBoundsError::index: usize
|
||||
pub bitcoin::transaction::IndexOutOfBoundsError::length: usize
|
||||
pub bitcoin::transaction::OutPoint::txid: bitcoin::blockdata::transaction::Txid
|
||||
|
@ -9470,6 +9535,26 @@ pub fn bitcoin::taproot::IncompleteBuilderError::fmt(&self, f: &mut core::fmt::F
|
|||
pub fn bitcoin::taproot::IncompleteBuilderError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::IncompleteBuilderError::into_builder(self) -> bitcoin::taproot::TaprootBuilder
|
||||
pub fn bitcoin::taproot::IncompleteBuilderError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::clone(&self) -> bitcoin::taproot::InvalidControlBlockSizeError
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::eq(&self, other: &bitcoin::taproot::InvalidControlBlockSizeError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::invalid_control_block_size(&self) -> usize
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::clone(&self) -> bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::eq(&self, other: &bitcoin::taproot::InvalidMerkleBranchSizeError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::invalid_merkle_branch_size(&self) -> usize
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::clone(&self) -> bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::eq(&self, other: &bitcoin::taproot::InvalidMerkleTreeDepthError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::invalid_merkle_tree_depth(&self) -> usize
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::clone(&self) -> bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::eq(&self, other: &bitcoin::taproot::InvalidTaprootLeafVersionError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::invalid_leaf_version(&self) -> u8
|
||||
pub fn bitcoin::taproot::LeafNode::clone(&self) -> bitcoin::taproot::LeafNode
|
||||
pub fn bitcoin::taproot::LeafNode::cmp(&self, other: &bitcoin::taproot::LeafNode) -> core::cmp::Ordering
|
||||
pub fn bitcoin::taproot::LeafNode::depth(&self) -> u8
|
||||
|
@ -9493,7 +9578,7 @@ pub fn bitcoin::taproot::LeafVersion::cmp(&self, other: &bitcoin::taproot::LeafV
|
|||
pub fn bitcoin::taproot::LeafVersion::deserialize<D>(deserializer: D) -> core::result::Result<Self, <D as serde::de::Deserializer>::Error> where D: serde::de::Deserializer<'de>
|
||||
pub fn bitcoin::taproot::LeafVersion::eq(&self, other: &bitcoin::taproot::LeafVersion) -> bool
|
||||
pub fn bitcoin::taproot::LeafVersion::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::LeafVersion::from_consensus(version: u8) -> core::result::Result<Self, bitcoin::taproot::TaprootError>
|
||||
pub fn bitcoin::taproot::LeafVersion::from_consensus(version: u8) -> core::result::Result<Self, bitcoin::taproot::InvalidTaprootLeafVersionError>
|
||||
pub fn bitcoin::taproot::LeafVersion::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
|
||||
pub fn bitcoin::taproot::LeafVersion::partial_cmp(&self, other: &bitcoin::taproot::LeafVersion) -> core::option::Option<core::cmp::Ordering>
|
||||
pub fn bitcoin::taproot::LeafVersion::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
|
||||
|
@ -9701,11 +9786,16 @@ pub fn bitcoin::taproot::TaprootBuilder::with_huffman_tree<I>(script_weights: I)
|
|||
pub fn bitcoin::taproot::TaprootBuilderError::clone(&self) -> bitcoin::taproot::TaprootBuilderError
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::eq(&self, other: &bitcoin::taproot::TaprootBuilderError) -> bool
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::from(e: bitcoin::taproot::InvalidMerkleTreeDepthError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
|
||||
pub fn bitcoin::taproot::TaprootError::clone(&self) -> bitcoin::taproot::TaprootError
|
||||
pub fn bitcoin::taproot::TaprootError::eq(&self, other: &bitcoin::taproot::TaprootError) -> bool
|
||||
pub fn bitcoin::taproot::TaprootError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidControlBlockSizeError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidMerkleBranchSizeError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidMerkleTreeDepthError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidTaprootLeafVersionError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
|
||||
pub fn bitcoin::taproot::TaprootSpendInfo::clone(&self) -> bitcoin::taproot::TaprootSpendInfo
|
||||
|
@ -10272,6 +10362,10 @@ pub struct bitcoin::sighash::TapSighashTag
|
|||
pub struct bitcoin::sign_message::MessageSignature
|
||||
pub struct bitcoin::taproot::ControlBlock
|
||||
pub struct bitcoin::taproot::FutureLeafVersion(_)
|
||||
pub struct bitcoin::taproot::InvalidControlBlockSizeError(_)
|
||||
pub struct bitcoin::taproot::InvalidMerkleBranchSizeError(_)
|
||||
pub struct bitcoin::taproot::InvalidMerkleTreeDepthError(_)
|
||||
pub struct bitcoin::taproot::InvalidTaprootLeafVersionError(_)
|
||||
pub struct bitcoin::taproot::LeafNode
|
||||
pub struct bitcoin::taproot::LeafNodes<'a>
|
||||
pub struct bitcoin::taproot::NodeInfo
|
||||
|
@ -10506,7 +10600,7 @@ pub type bitcoin::taproot::TapTweakHash::Engine = <bitcoin_hashes::sha256t::Hash
|
|||
pub type bitcoin::taproot::TapTweakHash::Err = hex_conservative::error::HexToArrayError
|
||||
pub type bitcoin::taproot::TapTweakHash::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
|
||||
pub type bitcoin::taproot::merkle_branch::IntoIter::Item = bitcoin::taproot::TapNodeHash
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Error = bitcoin::taproot::TaprootError
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Error = bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::IntoIter = bitcoin::taproot::merkle_branch::IntoIter
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Item = bitcoin::taproot::TapNodeHash
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Target = [bitcoin::taproot::TapNodeHash]
|
||||
|
|
|
@ -418,6 +418,10 @@ impl bitcoin::taproot::ControlBlock
|
|||
impl bitcoin::taproot::FutureLeafVersion
|
||||
impl bitcoin::taproot::HiddenNodesError
|
||||
impl bitcoin::taproot::IncompleteBuilderError
|
||||
impl bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl bitcoin::taproot::LeafNode
|
||||
impl bitcoin::taproot::LeafVersion
|
||||
impl bitcoin::taproot::NodeInfo
|
||||
|
@ -683,6 +687,10 @@ impl core::clone::Clone for bitcoin::taproot::ControlBlock
|
|||
impl core::clone::Clone for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::clone::Clone for bitcoin::taproot::HiddenNodesError
|
||||
impl core::clone::Clone for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::clone::Clone for bitcoin::taproot::LeafNode
|
||||
impl core::clone::Clone for bitcoin::taproot::LeafVersion
|
||||
impl core::clone::Clone for bitcoin::taproot::NodeInfo
|
||||
|
@ -880,6 +888,10 @@ impl core::cmp::Eq for bitcoin::taproot::ControlBlock
|
|||
impl core::cmp::Eq for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::cmp::Eq for bitcoin::taproot::HiddenNodesError
|
||||
impl core::cmp::Eq for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::cmp::Eq for bitcoin::taproot::LeafNode
|
||||
impl core::cmp::Eq for bitcoin::taproot::LeafVersion
|
||||
impl core::cmp::Eq for bitcoin::taproot::NodeInfo
|
||||
|
@ -1165,6 +1177,10 @@ impl core::cmp::PartialEq for bitcoin::taproot::ControlBlock
|
|||
impl core::cmp::PartialEq for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::HiddenNodesError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::LeafNode
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::LeafVersion
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::NodeInfo
|
||||
|
@ -1833,6 +1849,11 @@ impl core::convert::From<bitcoin::sighash::PrevoutsIndexError> for bitcoin::sigh
|
|||
impl core::convert::From<bitcoin::sighash::PrevoutsKindError> for bitcoin::sighash::TaprootError
|
||||
impl core::convert::From<bitcoin::sighash::PrevoutsSizeError> for bitcoin::sighash::TaprootError
|
||||
impl core::convert::From<bitcoin::sighash::TaprootError> for bitcoin::psbt::SignError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidControlBlockSizeError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidMerkleBranchSizeError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidMerkleTreeDepthError> for bitcoin::taproot::TaprootBuilderError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidMerkleTreeDepthError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidTaprootLeafVersionError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::LeafNode> for bitcoin::taproot::TapNodeHash
|
||||
impl core::convert::From<bitcoin::taproot::Signature> for bitcoin::taproot::serialized_signature::SerializedSignature
|
||||
impl core::convert::From<bitcoin::taproot::TapLeafHash> for bitcoin::taproot::TapNodeHash
|
||||
|
@ -1903,6 +1924,10 @@ impl core::convert::From<core::convert::Infallible> for bitcoin::sighash::Taproo
|
|||
impl core::convert::From<core::convert::Infallible> for bitcoin::sign_message::MessageSignatureError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::HiddenNodesError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::SigFromSliceError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::TaprootBuilderError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::TaprootError
|
||||
|
@ -2039,6 +2064,10 @@ impl core::error::Error for bitcoin::sighash::TaprootError
|
|||
impl core::error::Error for bitcoin::sign_message::MessageSignatureError
|
||||
impl core::error::Error for bitcoin::taproot::HiddenNodesError
|
||||
impl core::error::Error for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::error::Error for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::error::Error for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::error::Error for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::error::Error for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::error::Error for bitcoin::taproot::SigFromSliceError
|
||||
impl core::error::Error for bitcoin::taproot::TaprootBuilderError
|
||||
impl core::error::Error for bitcoin::taproot::TaprootError
|
||||
|
@ -2223,6 +2252,10 @@ impl core::fmt::Debug for bitcoin::taproot::ControlBlock
|
|||
impl core::fmt::Debug for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::fmt::Debug for bitcoin::taproot::HiddenNodesError
|
||||
impl core::fmt::Debug for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::fmt::Debug for bitcoin::taproot::LeafNode
|
||||
impl core::fmt::Debug for bitcoin::taproot::LeafVersion
|
||||
impl core::fmt::Debug for bitcoin::taproot::NodeInfo
|
||||
|
@ -2358,6 +2391,10 @@ impl core::fmt::Display for bitcoin::sign_message::MessageSignatureError
|
|||
impl core::fmt::Display for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::fmt::Display for bitcoin::taproot::HiddenNodesError
|
||||
impl core::fmt::Display for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::fmt::Display for bitcoin::taproot::LeafVersion
|
||||
impl core::fmt::Display for bitcoin::taproot::SigFromSliceError
|
||||
impl core::fmt::Display for bitcoin::taproot::TapLeafHash
|
||||
|
@ -2810,6 +2847,10 @@ impl core::marker::Freeze for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Freeze for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Freeze for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Freeze for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Freeze for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Freeze for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Freeze for bitcoin::taproot::NodeInfo
|
||||
|
@ -3015,6 +3056,10 @@ impl core::marker::Send for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Send for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Send for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Send for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Send for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Send for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Send for bitcoin::taproot::NodeInfo
|
||||
|
@ -3211,6 +3256,10 @@ impl core::marker::StructuralPartialEq for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::StructuralPartialEq for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::LeafNode
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::SigFromSliceError
|
||||
|
@ -3412,6 +3461,10 @@ impl core::marker::Sync for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Sync for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Sync for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Sync for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Sync for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Sync for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Sync for bitcoin::taproot::NodeInfo
|
||||
|
@ -3617,6 +3670,10 @@ impl core::marker::Unpin for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Unpin for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Unpin for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Unpin for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Unpin for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Unpin for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Unpin for bitcoin::taproot::NodeInfo
|
||||
|
@ -3850,6 +3907,10 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::ControlBlock
|
|||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::HiddenNodesError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::LeafNode
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::LeafVersion
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::NodeInfo
|
||||
|
@ -4051,6 +4112,10 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::ControlBlock
|
|||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::HiddenNodesError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::LeafNode
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::LeafVersion
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::NodeInfo
|
||||
|
@ -5357,15 +5422,15 @@ pub bitcoin::taproot::Signature::signature: secp256k1::schnorr::Signature
|
|||
pub bitcoin::taproot::TapLeaf::Hidden(bitcoin::taproot::TapNodeHash)
|
||||
pub bitcoin::taproot::TapLeaf::Script(bitcoin::blockdata::script::ScriptBuf, bitcoin::taproot::LeafVersion)
|
||||
pub bitcoin::taproot::TaprootBuilderError::EmptyTree
|
||||
pub bitcoin::taproot::TaprootBuilderError::InvalidMerkleTreeDepth(usize)
|
||||
pub bitcoin::taproot::TaprootBuilderError::InvalidMerkleTreeDepth(bitcoin::taproot::InvalidMerkleTreeDepthError)
|
||||
pub bitcoin::taproot::TaprootBuilderError::NodeNotInDfsOrder
|
||||
pub bitcoin::taproot::TaprootBuilderError::OverCompleteTree
|
||||
pub bitcoin::taproot::TaprootError::EmptyTree
|
||||
pub bitcoin::taproot::TaprootError::InvalidControlBlockSize(usize)
|
||||
pub bitcoin::taproot::TaprootError::InvalidControlBlockSize(bitcoin::taproot::InvalidControlBlockSizeError)
|
||||
pub bitcoin::taproot::TaprootError::InvalidInternalKey(secp256k1::Error)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleBranchSize(usize)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleTreeDepth(usize)
|
||||
pub bitcoin::taproot::TaprootError::InvalidTaprootLeafVersion(u8)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleBranchSize(bitcoin::taproot::InvalidMerkleBranchSizeError)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleTreeDepth(bitcoin::taproot::InvalidMerkleTreeDepthError)
|
||||
pub bitcoin::taproot::TaprootError::InvalidTaprootLeafVersion(bitcoin::taproot::InvalidTaprootLeafVersionError)
|
||||
pub bitcoin::transaction::IndexOutOfBoundsError::index: usize
|
||||
pub bitcoin::transaction::IndexOutOfBoundsError::length: usize
|
||||
pub bitcoin::transaction::OutPoint::txid: bitcoin::blockdata::transaction::Txid
|
||||
|
@ -8975,6 +9040,26 @@ pub fn bitcoin::taproot::IncompleteBuilderError::fmt(&self, f: &mut core::fmt::F
|
|||
pub fn bitcoin::taproot::IncompleteBuilderError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::IncompleteBuilderError::into_builder(self) -> bitcoin::taproot::TaprootBuilder
|
||||
pub fn bitcoin::taproot::IncompleteBuilderError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::clone(&self) -> bitcoin::taproot::InvalidControlBlockSizeError
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::eq(&self, other: &bitcoin::taproot::InvalidControlBlockSizeError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::invalid_control_block_size(&self) -> usize
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::clone(&self) -> bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::eq(&self, other: &bitcoin::taproot::InvalidMerkleBranchSizeError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::invalid_merkle_branch_size(&self) -> usize
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::clone(&self) -> bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::eq(&self, other: &bitcoin::taproot::InvalidMerkleTreeDepthError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::invalid_merkle_tree_depth(&self) -> usize
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::clone(&self) -> bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::eq(&self, other: &bitcoin::taproot::InvalidTaprootLeafVersionError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::invalid_leaf_version(&self) -> u8
|
||||
pub fn bitcoin::taproot::LeafNode::clone(&self) -> bitcoin::taproot::LeafNode
|
||||
pub fn bitcoin::taproot::LeafNode::cmp(&self, other: &bitcoin::taproot::LeafNode) -> core::cmp::Ordering
|
||||
pub fn bitcoin::taproot::LeafNode::depth(&self) -> u8
|
||||
|
@ -8997,7 +9082,7 @@ pub fn bitcoin::taproot::LeafVersion::clone(&self) -> bitcoin::taproot::LeafVers
|
|||
pub fn bitcoin::taproot::LeafVersion::cmp(&self, other: &bitcoin::taproot::LeafVersion) -> core::cmp::Ordering
|
||||
pub fn bitcoin::taproot::LeafVersion::eq(&self, other: &bitcoin::taproot::LeafVersion) -> bool
|
||||
pub fn bitcoin::taproot::LeafVersion::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::LeafVersion::from_consensus(version: u8) -> core::result::Result<Self, bitcoin::taproot::TaprootError>
|
||||
pub fn bitcoin::taproot::LeafVersion::from_consensus(version: u8) -> core::result::Result<Self, bitcoin::taproot::InvalidTaprootLeafVersionError>
|
||||
pub fn bitcoin::taproot::LeafVersion::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
|
||||
pub fn bitcoin::taproot::LeafVersion::partial_cmp(&self, other: &bitcoin::taproot::LeafVersion) -> core::option::Option<core::cmp::Ordering>
|
||||
pub fn bitcoin::taproot::LeafVersion::to_consensus(self) -> u8
|
||||
|
@ -9187,11 +9272,16 @@ pub fn bitcoin::taproot::TaprootBuilder::with_huffman_tree<I>(script_weights: I)
|
|||
pub fn bitcoin::taproot::TaprootBuilderError::clone(&self) -> bitcoin::taproot::TaprootBuilderError
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::eq(&self, other: &bitcoin::taproot::TaprootBuilderError) -> bool
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::from(e: bitcoin::taproot::InvalidMerkleTreeDepthError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
|
||||
pub fn bitcoin::taproot::TaprootError::clone(&self) -> bitcoin::taproot::TaprootError
|
||||
pub fn bitcoin::taproot::TaprootError::eq(&self, other: &bitcoin::taproot::TaprootError) -> bool
|
||||
pub fn bitcoin::taproot::TaprootError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidControlBlockSizeError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidMerkleBranchSizeError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidMerkleTreeDepthError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidTaprootLeafVersionError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
|
||||
pub fn bitcoin::taproot::TaprootSpendInfo::clone(&self) -> bitcoin::taproot::TaprootSpendInfo
|
||||
|
@ -9746,6 +9836,10 @@ pub struct bitcoin::sighash::TapSighashTag
|
|||
pub struct bitcoin::sign_message::MessageSignature
|
||||
pub struct bitcoin::taproot::ControlBlock
|
||||
pub struct bitcoin::taproot::FutureLeafVersion(_)
|
||||
pub struct bitcoin::taproot::InvalidControlBlockSizeError(_)
|
||||
pub struct bitcoin::taproot::InvalidMerkleBranchSizeError(_)
|
||||
pub struct bitcoin::taproot::InvalidMerkleTreeDepthError(_)
|
||||
pub struct bitcoin::taproot::InvalidTaprootLeafVersionError(_)
|
||||
pub struct bitcoin::taproot::LeafNode
|
||||
pub struct bitcoin::taproot::LeafNodes<'a>
|
||||
pub struct bitcoin::taproot::NodeInfo
|
||||
|
@ -9964,7 +10058,7 @@ pub type bitcoin::taproot::TapTweakHash::Engine = <bitcoin_hashes::sha256t::Hash
|
|||
pub type bitcoin::taproot::TapTweakHash::Err = hex_conservative::error::HexToArrayError
|
||||
pub type bitcoin::taproot::TapTweakHash::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
|
||||
pub type bitcoin::taproot::merkle_branch::IntoIter::Item = bitcoin::taproot::TapNodeHash
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Error = bitcoin::taproot::TaprootError
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Error = bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::IntoIter = bitcoin::taproot::merkle_branch::IntoIter
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Item = bitcoin::taproot::TapNodeHash
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Target = [bitcoin::taproot::TapNodeHash]
|
||||
|
|
|
@ -349,6 +349,10 @@ impl bitcoin::taproot::ControlBlock
|
|||
impl bitcoin::taproot::FutureLeafVersion
|
||||
impl bitcoin::taproot::HiddenNodesError
|
||||
impl bitcoin::taproot::IncompleteBuilderError
|
||||
impl bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl bitcoin::taproot::LeafNode
|
||||
impl bitcoin::taproot::LeafVersion
|
||||
impl bitcoin::taproot::NodeInfo
|
||||
|
@ -586,6 +590,10 @@ impl core::clone::Clone for bitcoin::taproot::ControlBlock
|
|||
impl core::clone::Clone for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::clone::Clone for bitcoin::taproot::HiddenNodesError
|
||||
impl core::clone::Clone for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::clone::Clone for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::clone::Clone for bitcoin::taproot::LeafNode
|
||||
impl core::clone::Clone for bitcoin::taproot::LeafVersion
|
||||
impl core::clone::Clone for bitcoin::taproot::NodeInfo
|
||||
|
@ -755,6 +763,10 @@ impl core::cmp::Eq for bitcoin::taproot::ControlBlock
|
|||
impl core::cmp::Eq for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::cmp::Eq for bitcoin::taproot::HiddenNodesError
|
||||
impl core::cmp::Eq for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::cmp::Eq for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::cmp::Eq for bitcoin::taproot::LeafNode
|
||||
impl core::cmp::Eq for bitcoin::taproot::LeafVersion
|
||||
impl core::cmp::Eq for bitcoin::taproot::NodeInfo
|
||||
|
@ -1007,6 +1019,10 @@ impl core::cmp::PartialEq for bitcoin::taproot::ControlBlock
|
|||
impl core::cmp::PartialEq for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::HiddenNodesError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::LeafNode
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::LeafVersion
|
||||
impl core::cmp::PartialEq for bitcoin::taproot::NodeInfo
|
||||
|
@ -1669,6 +1685,11 @@ impl core::convert::From<bitcoin::sighash::PrevoutsIndexError> for bitcoin::sigh
|
|||
impl core::convert::From<bitcoin::sighash::PrevoutsKindError> for bitcoin::sighash::TaprootError
|
||||
impl core::convert::From<bitcoin::sighash::PrevoutsSizeError> for bitcoin::sighash::TaprootError
|
||||
impl core::convert::From<bitcoin::sighash::TaprootError> for bitcoin::psbt::SignError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidControlBlockSizeError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidMerkleBranchSizeError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidMerkleTreeDepthError> for bitcoin::taproot::TaprootBuilderError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidMerkleTreeDepthError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::InvalidTaprootLeafVersionError> for bitcoin::taproot::TaprootError
|
||||
impl core::convert::From<bitcoin::taproot::LeafNode> for bitcoin::taproot::TapNodeHash
|
||||
impl core::convert::From<bitcoin::taproot::Signature> for bitcoin::taproot::serialized_signature::SerializedSignature
|
||||
impl core::convert::From<bitcoin::taproot::TapLeafHash> for bitcoin::taproot::TapNodeHash
|
||||
|
@ -1738,6 +1759,10 @@ impl core::convert::From<core::convert::Infallible> for bitcoin::sighash::Prevou
|
|||
impl core::convert::From<core::convert::Infallible> for bitcoin::sighash::TaprootError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::HiddenNodesError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::SigFromSliceError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::TaprootBuilderError
|
||||
impl core::convert::From<core::convert::Infallible> for bitcoin::taproot::TaprootError
|
||||
|
@ -1954,6 +1979,10 @@ impl core::fmt::Debug for bitcoin::taproot::ControlBlock
|
|||
impl core::fmt::Debug for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::fmt::Debug for bitcoin::taproot::HiddenNodesError
|
||||
impl core::fmt::Debug for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::fmt::Debug for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::fmt::Debug for bitcoin::taproot::LeafNode
|
||||
impl core::fmt::Debug for bitcoin::taproot::LeafVersion
|
||||
impl core::fmt::Debug for bitcoin::taproot::NodeInfo
|
||||
|
@ -2086,6 +2115,10 @@ impl core::fmt::Display for bitcoin::sighash::TaprootError
|
|||
impl core::fmt::Display for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::fmt::Display for bitcoin::taproot::HiddenNodesError
|
||||
impl core::fmt::Display for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::fmt::Display for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::fmt::Display for bitcoin::taproot::LeafVersion
|
||||
impl core::fmt::Display for bitcoin::taproot::SigFromSliceError
|
||||
impl core::fmt::Display for bitcoin::taproot::TapLeafHash
|
||||
|
@ -2497,6 +2530,10 @@ impl core::marker::Freeze for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Freeze for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Freeze for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Freeze for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Freeze for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Freeze for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Freeze for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Freeze for bitcoin::taproot::NodeInfo
|
||||
|
@ -2674,6 +2711,10 @@ impl core::marker::Send for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Send for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Send for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Send for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Send for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Send for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Send for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Send for bitcoin::taproot::NodeInfo
|
||||
|
@ -2842,6 +2883,10 @@ impl core::marker::StructuralPartialEq for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::StructuralPartialEq for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::LeafNode
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::StructuralPartialEq for bitcoin::taproot::SigFromSliceError
|
||||
|
@ -3015,6 +3060,10 @@ impl core::marker::Sync for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Sync for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Sync for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Sync for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Sync for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Sync for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Sync for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Sync for bitcoin::taproot::NodeInfo
|
||||
|
@ -3192,6 +3241,10 @@ impl core::marker::Unpin for bitcoin::taproot::ControlBlock
|
|||
impl core::marker::Unpin for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::marker::Unpin for bitcoin::taproot::HiddenNodesError
|
||||
impl core::marker::Unpin for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::marker::Unpin for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::marker::Unpin for bitcoin::taproot::LeafNode
|
||||
impl core::marker::Unpin for bitcoin::taproot::LeafVersion
|
||||
impl core::marker::Unpin for bitcoin::taproot::NodeInfo
|
||||
|
@ -3397,6 +3450,10 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::ControlBlock
|
|||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::HiddenNodesError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::LeafNode
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::LeafVersion
|
||||
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin::taproot::NodeInfo
|
||||
|
@ -3570,6 +3627,10 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::ControlBlock
|
|||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::FutureLeafVersion
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::HiddenNodesError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::IncompleteBuilderError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidControlBlockSizeError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::LeafNode
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::LeafVersion
|
||||
impl core::panic::unwind_safe::UnwindSafe for bitcoin::taproot::NodeInfo
|
||||
|
@ -4740,15 +4801,15 @@ pub bitcoin::taproot::Signature::signature: secp256k1::schnorr::Signature
|
|||
pub bitcoin::taproot::TapLeaf::Hidden(bitcoin::taproot::TapNodeHash)
|
||||
pub bitcoin::taproot::TapLeaf::Script(bitcoin::blockdata::script::ScriptBuf, bitcoin::taproot::LeafVersion)
|
||||
pub bitcoin::taproot::TaprootBuilderError::EmptyTree
|
||||
pub bitcoin::taproot::TaprootBuilderError::InvalidMerkleTreeDepth(usize)
|
||||
pub bitcoin::taproot::TaprootBuilderError::InvalidMerkleTreeDepth(bitcoin::taproot::InvalidMerkleTreeDepthError)
|
||||
pub bitcoin::taproot::TaprootBuilderError::NodeNotInDfsOrder
|
||||
pub bitcoin::taproot::TaprootBuilderError::OverCompleteTree
|
||||
pub bitcoin::taproot::TaprootError::EmptyTree
|
||||
pub bitcoin::taproot::TaprootError::InvalidControlBlockSize(usize)
|
||||
pub bitcoin::taproot::TaprootError::InvalidControlBlockSize(bitcoin::taproot::InvalidControlBlockSizeError)
|
||||
pub bitcoin::taproot::TaprootError::InvalidInternalKey(secp256k1::Error)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleBranchSize(usize)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleTreeDepth(usize)
|
||||
pub bitcoin::taproot::TaprootError::InvalidTaprootLeafVersion(u8)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleBranchSize(bitcoin::taproot::InvalidMerkleBranchSizeError)
|
||||
pub bitcoin::taproot::TaprootError::InvalidMerkleTreeDepth(bitcoin::taproot::InvalidMerkleTreeDepthError)
|
||||
pub bitcoin::taproot::TaprootError::InvalidTaprootLeafVersion(bitcoin::taproot::InvalidTaprootLeafVersionError)
|
||||
pub bitcoin::transaction::IndexOutOfBoundsError::index: usize
|
||||
pub bitcoin::transaction::IndexOutOfBoundsError::length: usize
|
||||
pub bitcoin::transaction::OutPoint::txid: bitcoin::blockdata::transaction::Txid
|
||||
|
@ -8087,6 +8148,26 @@ pub fn bitcoin::taproot::IncompleteBuilderError::eq(&self, other: &bitcoin::tapr
|
|||
pub fn bitcoin::taproot::IncompleteBuilderError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::IncompleteBuilderError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::IncompleteBuilderError::into_builder(self) -> bitcoin::taproot::TaprootBuilder
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::clone(&self) -> bitcoin::taproot::InvalidControlBlockSizeError
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::eq(&self, other: &bitcoin::taproot::InvalidControlBlockSizeError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidControlBlockSizeError::invalid_control_block_size(&self) -> usize
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::clone(&self) -> bitcoin::taproot::InvalidMerkleBranchSizeError
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::eq(&self, other: &bitcoin::taproot::InvalidMerkleBranchSizeError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidMerkleBranchSizeError::invalid_merkle_branch_size(&self) -> usize
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::clone(&self) -> bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::eq(&self, other: &bitcoin::taproot::InvalidMerkleTreeDepthError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidMerkleTreeDepthError::invalid_merkle_tree_depth(&self) -> usize
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::clone(&self) -> bitcoin::taproot::InvalidTaprootLeafVersionError
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::eq(&self, other: &bitcoin::taproot::InvalidTaprootLeafVersionError) -> bool
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::InvalidTaprootLeafVersionError::invalid_leaf_version(&self) -> u8
|
||||
pub fn bitcoin::taproot::LeafNode::clone(&self) -> bitcoin::taproot::LeafNode
|
||||
pub fn bitcoin::taproot::LeafNode::cmp(&self, other: &bitcoin::taproot::LeafNode) -> core::cmp::Ordering
|
||||
pub fn bitcoin::taproot::LeafNode::depth(&self) -> u8
|
||||
|
@ -8109,7 +8190,7 @@ pub fn bitcoin::taproot::LeafVersion::clone(&self) -> bitcoin::taproot::LeafVers
|
|||
pub fn bitcoin::taproot::LeafVersion::cmp(&self, other: &bitcoin::taproot::LeafVersion) -> core::cmp::Ordering
|
||||
pub fn bitcoin::taproot::LeafVersion::eq(&self, other: &bitcoin::taproot::LeafVersion) -> bool
|
||||
pub fn bitcoin::taproot::LeafVersion::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::LeafVersion::from_consensus(version: u8) -> core::result::Result<Self, bitcoin::taproot::TaprootError>
|
||||
pub fn bitcoin::taproot::LeafVersion::from_consensus(version: u8) -> core::result::Result<Self, bitcoin::taproot::InvalidTaprootLeafVersionError>
|
||||
pub fn bitcoin::taproot::LeafVersion::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
|
||||
pub fn bitcoin::taproot::LeafVersion::partial_cmp(&self, other: &bitcoin::taproot::LeafVersion) -> core::option::Option<core::cmp::Ordering>
|
||||
pub fn bitcoin::taproot::LeafVersion::to_consensus(self) -> u8
|
||||
|
@ -8298,10 +8379,15 @@ pub fn bitcoin::taproot::TaprootBuilder::with_huffman_tree<I>(script_weights: I)
|
|||
pub fn bitcoin::taproot::TaprootBuilderError::clone(&self) -> bitcoin::taproot::TaprootBuilderError
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::eq(&self, other: &bitcoin::taproot::TaprootBuilderError) -> bool
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::from(e: bitcoin::taproot::InvalidMerkleTreeDepthError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootBuilderError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::clone(&self) -> bitcoin::taproot::TaprootError
|
||||
pub fn bitcoin::taproot::TaprootError::eq(&self, other: &bitcoin::taproot::TaprootError) -> bool
|
||||
pub fn bitcoin::taproot::TaprootError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidControlBlockSizeError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidMerkleBranchSizeError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidMerkleTreeDepthError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(e: bitcoin::taproot::InvalidTaprootLeafVersionError) -> Self
|
||||
pub fn bitcoin::taproot::TaprootError::from(never: core::convert::Infallible) -> Self
|
||||
pub fn bitcoin::taproot::TaprootSpendInfo::clone(&self) -> bitcoin::taproot::TaprootSpendInfo
|
||||
pub fn bitcoin::taproot::TaprootSpendInfo::cmp(&self, other: &bitcoin::taproot::TaprootSpendInfo) -> core::cmp::Ordering
|
||||
|
@ -8824,6 +8910,10 @@ pub struct bitcoin::sighash::TapSighash(_)
|
|||
pub struct bitcoin::sighash::TapSighashTag
|
||||
pub struct bitcoin::taproot::ControlBlock
|
||||
pub struct bitcoin::taproot::FutureLeafVersion(_)
|
||||
pub struct bitcoin::taproot::InvalidControlBlockSizeError(_)
|
||||
pub struct bitcoin::taproot::InvalidMerkleBranchSizeError(_)
|
||||
pub struct bitcoin::taproot::InvalidMerkleTreeDepthError(_)
|
||||
pub struct bitcoin::taproot::InvalidTaprootLeafVersionError(_)
|
||||
pub struct bitcoin::taproot::LeafNode
|
||||
pub struct bitcoin::taproot::LeafNodes<'a>
|
||||
pub struct bitcoin::taproot::NodeInfo
|
||||
|
@ -9036,7 +9126,7 @@ pub type bitcoin::taproot::TapTweakHash::Engine = <bitcoin_hashes::sha256t::Hash
|
|||
pub type bitcoin::taproot::TapTweakHash::Err = hex_conservative::error::HexToArrayError
|
||||
pub type bitcoin::taproot::TapTweakHash::Output = <I as core::slice::index::SliceIndex<[u8]>>::Output
|
||||
pub type bitcoin::taproot::merkle_branch::IntoIter::Item = bitcoin::taproot::TapNodeHash
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Error = bitcoin::taproot::TaprootError
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Error = bitcoin::taproot::InvalidMerkleTreeDepthError
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::IntoIter = bitcoin::taproot::merkle_branch::IntoIter
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Item = bitcoin::taproot::TapNodeHash
|
||||
pub type bitcoin::taproot::merkle_branch::TaprootMerkleBranch::Target = [bitcoin::taproot::TapNodeHash]
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
use hashes::Hash;
|
||||
|
||||
use super::{
|
||||
TapNodeHash, TaprootBuilderError, TaprootError, TAPROOT_CONTROL_MAX_NODE_COUNT,
|
||||
TAPROOT_CONTROL_NODE_SIZE,
|
||||
InvalidMerkleBranchSizeError, InvalidMerkleTreeDepthError, TapNodeHash, TaprootError,
|
||||
TAPROOT_CONTROL_MAX_NODE_COUNT, TAPROOT_CONTROL_NODE_SIZE,
|
||||
};
|
||||
use crate::prelude::*;
|
||||
|
||||
|
@ -47,9 +47,9 @@ impl TaprootMerkleBranch {
|
|||
/// if the number of hashes exceeds 128.
|
||||
pub fn decode(sl: &[u8]) -> Result<Self, TaprootError> {
|
||||
if sl.len() % TAPROOT_CONTROL_NODE_SIZE != 0 {
|
||||
Err(TaprootError::InvalidMerkleBranchSize(sl.len()))
|
||||
Err(InvalidMerkleBranchSizeError(sl.len()).into())
|
||||
} else if sl.len() > TAPROOT_CONTROL_NODE_SIZE * TAPROOT_CONTROL_MAX_NODE_COUNT {
|
||||
Err(TaprootError::InvalidMerkleTreeDepth(sl.len() / TAPROOT_CONTROL_NODE_SIZE))
|
||||
Err(InvalidMerkleTreeDepthError(sl.len() / TAPROOT_CONTROL_NODE_SIZE).into())
|
||||
} else {
|
||||
let inner = sl
|
||||
.chunks_exact(TAPROOT_CONTROL_NODE_SIZE)
|
||||
|
@ -71,9 +71,9 @@ impl TaprootMerkleBranch {
|
|||
#[inline]
|
||||
fn from_collection<T: AsRef<[TapNodeHash]> + Into<Vec<TapNodeHash>>>(
|
||||
collection: T,
|
||||
) -> Result<Self, TaprootError> {
|
||||
) -> Result<Self, InvalidMerkleTreeDepthError> {
|
||||
if collection.as_ref().len() > TAPROOT_CONTROL_MAX_NODE_COUNT {
|
||||
Err(TaprootError::InvalidMerkleTreeDepth(collection.as_ref().len()))
|
||||
Err(InvalidMerkleTreeDepthError(collection.as_ref().len()))
|
||||
} else {
|
||||
Ok(TaprootMerkleBranch(collection.into()))
|
||||
}
|
||||
|
@ -97,9 +97,9 @@ impl TaprootMerkleBranch {
|
|||
}
|
||||
|
||||
/// Appends elements to proof.
|
||||
pub(super) fn push(&mut self, h: TapNodeHash) -> Result<(), TaprootBuilderError> {
|
||||
pub(super) fn push(&mut self, h: TapNodeHash) -> Result<(), InvalidMerkleTreeDepthError> {
|
||||
if self.len() >= TAPROOT_CONTROL_MAX_NODE_COUNT {
|
||||
Err(TaprootBuilderError::InvalidMerkleTreeDepth(self.0.len()))
|
||||
Err(InvalidMerkleTreeDepthError(self.0.len()))
|
||||
} else {
|
||||
self.0.push(h);
|
||||
Ok(())
|
||||
|
@ -119,7 +119,7 @@ impl TaprootMerkleBranch {
|
|||
macro_rules! impl_try_from {
|
||||
($from:ty) => {
|
||||
impl TryFrom<$from> for TaprootMerkleBranch {
|
||||
type Error = TaprootError;
|
||||
type Error = InvalidMerkleTreeDepthError;
|
||||
|
||||
/// Creates a merkle proof from list of hashes.
|
||||
///
|
||||
|
|
|
@ -546,7 +546,7 @@ impl TaprootBuilder {
|
|||
// early error on invalid depth. Though this will be checked later
|
||||
// while constructing TaprootMerkelBranch
|
||||
if depth as usize > TAPROOT_CONTROL_MAX_NODE_COUNT {
|
||||
return Err(TaprootBuilderError::InvalidMerkleTreeDepth(depth as usize));
|
||||
return Err(InvalidMerkleTreeDepthError(depth as usize).into());
|
||||
}
|
||||
// We cannot insert a leaf at a lower depth while a deeper branch is unfinished. Doing
|
||||
// so would mean the add_leaf/add_hidden invocations do not correspond to a DFS traversal of a
|
||||
|
@ -1110,7 +1110,7 @@ impl ControlBlock {
|
|||
if sl.len() < TAPROOT_CONTROL_BASE_SIZE
|
||||
|| (sl.len() - TAPROOT_CONTROL_BASE_SIZE) % TAPROOT_CONTROL_NODE_SIZE != 0
|
||||
{
|
||||
return Err(TaprootError::InvalidControlBlockSize(sl.len()));
|
||||
return Err(InvalidControlBlockSizeError(sl.len()).into());
|
||||
}
|
||||
let output_key_parity = match sl[0] & 1 {
|
||||
0 => secp256k1::Parity::Even,
|
||||
|
@ -1188,14 +1188,15 @@ impl ControlBlock {
|
|||
pub struct FutureLeafVersion(u8);
|
||||
|
||||
impl FutureLeafVersion {
|
||||
pub(self) fn from_consensus(version: u8) -> Result<FutureLeafVersion, TaprootError> {
|
||||
pub(self) fn from_consensus(
|
||||
version: u8,
|
||||
) -> Result<FutureLeafVersion, InvalidTaprootLeafVersionError> {
|
||||
match version {
|
||||
TAPROOT_LEAF_TAPSCRIPT => unreachable!(
|
||||
"FutureLeafVersion::from_consensus should be never called for 0xC0 value"
|
||||
),
|
||||
TAPROOT_ANNEX_PREFIX =>
|
||||
Err(TaprootError::InvalidTaprootLeafVersion(TAPROOT_ANNEX_PREFIX)),
|
||||
odd if odd & 0xFE != odd => Err(TaprootError::InvalidTaprootLeafVersion(odd)),
|
||||
TAPROOT_ANNEX_PREFIX => Err(InvalidTaprootLeafVersionError(TAPROOT_ANNEX_PREFIX)),
|
||||
odd if odd & 0xFE != odd => Err(InvalidTaprootLeafVersionError(odd)),
|
||||
even => Ok(FutureLeafVersion(even)),
|
||||
}
|
||||
}
|
||||
|
@ -1237,11 +1238,10 @@ impl LeafVersion {
|
|||
///
|
||||
/// - If the last bit of the `version` is odd.
|
||||
/// - If the `version` is 0x50 ([`TAPROOT_ANNEX_PREFIX`]).
|
||||
pub fn from_consensus(version: u8) -> Result<Self, TaprootError> {
|
||||
pub fn from_consensus(version: u8) -> Result<Self, InvalidTaprootLeafVersionError> {
|
||||
match version {
|
||||
TAPROOT_LEAF_TAPSCRIPT => Ok(LeafVersion::TapScript),
|
||||
TAPROOT_ANNEX_PREFIX =>
|
||||
Err(TaprootError::InvalidTaprootLeafVersion(TAPROOT_ANNEX_PREFIX)),
|
||||
TAPROOT_ANNEX_PREFIX => Err(InvalidTaprootLeafVersionError(TAPROOT_ANNEX_PREFIX)),
|
||||
future => FutureLeafVersion::from_consensus(future).map(LeafVersion::Future),
|
||||
}
|
||||
}
|
||||
|
@ -1332,7 +1332,7 @@ impl<'de> serde::Deserialize<'de> for LeafVersion {
|
|||
#[non_exhaustive]
|
||||
pub enum TaprootBuilderError {
|
||||
/// Merkle tree depth must not be more than 128.
|
||||
InvalidMerkleTreeDepth(usize),
|
||||
InvalidMerkleTreeDepth(InvalidMerkleTreeDepthError),
|
||||
/// Nodes must be added specified in DFS walk order.
|
||||
NodeNotInDfsOrder,
|
||||
/// Two nodes at depth 0 are not allowed.
|
||||
|
@ -1348,13 +1348,7 @@ impl fmt::Display for TaprootBuilderError {
|
|||
use TaprootBuilderError::*;
|
||||
|
||||
match *self {
|
||||
InvalidMerkleTreeDepth(d) => {
|
||||
write!(
|
||||
f,
|
||||
"Merkle Tree depth({}) must be less than {}",
|
||||
d, TAPROOT_CONTROL_MAX_NODE_COUNT
|
||||
)
|
||||
}
|
||||
InvalidMerkleTreeDepth(ref e) => write_err!(f, "invalid Merkle tree depth"; e),
|
||||
NodeNotInDfsOrder => {
|
||||
write!(f, "add_leaf/add_hidden must be called in DFS walk order",)
|
||||
}
|
||||
|
@ -1375,24 +1369,29 @@ impl std::error::Error for TaprootBuilderError {
|
|||
fn source(&self) -> Option<&(dyn std::error::Error + 'static)> {
|
||||
use TaprootBuilderError::*;
|
||||
|
||||
match self {
|
||||
InvalidMerkleTreeDepth(_) | NodeNotInDfsOrder | OverCompleteTree | EmptyTree => None,
|
||||
match *self {
|
||||
InvalidMerkleTreeDepth(ref e) => Some(e),
|
||||
NodeNotInDfsOrder | OverCompleteTree | EmptyTree => None,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<InvalidMerkleTreeDepthError> for TaprootBuilderError {
|
||||
fn from(e: InvalidMerkleTreeDepthError) -> Self { Self::InvalidMerkleTreeDepth(e) }
|
||||
}
|
||||
|
||||
/// Detailed error type for taproot utilities.
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
#[non_exhaustive]
|
||||
pub enum TaprootError {
|
||||
/// Proof size must be a multiple of 32.
|
||||
InvalidMerkleBranchSize(usize),
|
||||
InvalidMerkleBranchSize(InvalidMerkleBranchSizeError),
|
||||
/// Merkle tree depth must not be more than 128.
|
||||
InvalidMerkleTreeDepth(usize),
|
||||
InvalidMerkleTreeDepth(InvalidMerkleTreeDepthError),
|
||||
/// The last bit of tapleaf version must be zero.
|
||||
InvalidTaprootLeafVersion(u8),
|
||||
InvalidTaprootLeafVersion(InvalidTaprootLeafVersionError),
|
||||
/// Invalid control block size.
|
||||
InvalidControlBlockSize(usize),
|
||||
InvalidControlBlockSize(InvalidControlBlockSizeError),
|
||||
/// Invalid taproot internal key.
|
||||
InvalidInternalKey(secp256k1::Error),
|
||||
/// Empty tap tree.
|
||||
|
@ -1406,27 +1405,11 @@ impl fmt::Display for TaprootError {
|
|||
use TaprootError::*;
|
||||
|
||||
match *self {
|
||||
InvalidMerkleBranchSize(sz) => write!(
|
||||
f,
|
||||
"Merkle branch size({}) must be a multiple of {}",
|
||||
sz, TAPROOT_CONTROL_NODE_SIZE
|
||||
),
|
||||
InvalidMerkleTreeDepth(d) => write!(
|
||||
f,
|
||||
"Merkle Tree depth({}) must be less than {}",
|
||||
d, TAPROOT_CONTROL_MAX_NODE_COUNT
|
||||
),
|
||||
InvalidTaprootLeafVersion(v) => {
|
||||
write!(f, "Leaf version({}) must have the least significant bit 0", v)
|
||||
}
|
||||
InvalidControlBlockSize(sz) => write!(
|
||||
f,
|
||||
"Control Block size({}) must be of the form 33 + 32*m where 0 <= m <= {} ",
|
||||
sz, TAPROOT_CONTROL_MAX_NODE_COUNT
|
||||
),
|
||||
InvalidInternalKey(ref e) => {
|
||||
write_err!(f, "invalid internal x-only key"; e)
|
||||
}
|
||||
InvalidMerkleBranchSize(ref e) => write_err!(f, "invalid Merkle branch size"; e),
|
||||
InvalidMerkleTreeDepth(ref e) => write_err!(f, "invalid Merkle tree depth"; e),
|
||||
InvalidTaprootLeafVersion(ref e) => write_err!(f, "invalid Taproot leaf version"; e),
|
||||
InvalidControlBlockSize(ref e) => write_err!(f, "invalid control block size"; e),
|
||||
InvalidInternalKey(ref e) => write_err!(f, "invalid internal x-only key"; e),
|
||||
EmptyTree => write!(f, "Taproot Tree must contain at least one script"),
|
||||
}
|
||||
}
|
||||
|
@ -1439,15 +1422,121 @@ impl std::error::Error for TaprootError {
|
|||
|
||||
match self {
|
||||
InvalidInternalKey(e) => Some(e),
|
||||
InvalidMerkleBranchSize(_)
|
||||
| InvalidMerkleTreeDepth(_)
|
||||
| InvalidTaprootLeafVersion(_)
|
||||
| InvalidControlBlockSize(_)
|
||||
| EmptyTree => None,
|
||||
InvalidTaprootLeafVersion(ref e) => Some(e),
|
||||
InvalidMerkleTreeDepth(ref e) => Some(e),
|
||||
InvalidMerkleBranchSize(_) | InvalidControlBlockSize(_) | EmptyTree => None,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<InvalidMerkleBranchSizeError> for TaprootError {
|
||||
fn from(e: InvalidMerkleBranchSizeError) -> Self { Self::InvalidMerkleBranchSize(e) }
|
||||
}
|
||||
|
||||
impl From<InvalidMerkleTreeDepthError> for TaprootError {
|
||||
fn from(e: InvalidMerkleTreeDepthError) -> Self { Self::InvalidMerkleTreeDepth(e) }
|
||||
}
|
||||
|
||||
impl From<InvalidTaprootLeafVersionError> for TaprootError {
|
||||
fn from(e: InvalidTaprootLeafVersionError) -> Self { Self::InvalidTaprootLeafVersion(e) }
|
||||
}
|
||||
|
||||
impl From<InvalidControlBlockSizeError> for TaprootError {
|
||||
fn from(e: InvalidControlBlockSizeError) -> Self { Self::InvalidControlBlockSize(e) }
|
||||
}
|
||||
|
||||
/// Proof size must be a multiple of 32.
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub struct InvalidMerkleBranchSizeError(usize);
|
||||
|
||||
impl InvalidMerkleBranchSizeError {
|
||||
/// Accessor for the invalid merkle branch size.
|
||||
pub fn invalid_merkle_branch_size(&self) -> usize { self.0 }
|
||||
}
|
||||
|
||||
internals::impl_from_infallible!(InvalidMerkleBranchSizeError);
|
||||
|
||||
impl fmt::Display for InvalidMerkleBranchSizeError {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
write!(
|
||||
f,
|
||||
"Merkle branch size({}) must be a multiple of {}",
|
||||
self.0, TAPROOT_CONTROL_NODE_SIZE
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "std")]
|
||||
impl std::error::Error for InvalidMerkleBranchSizeError {}
|
||||
|
||||
/// Merkle tree depth must not be more than 128.
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub struct InvalidMerkleTreeDepthError(usize);
|
||||
|
||||
impl InvalidMerkleTreeDepthError {
|
||||
/// Accessor for the invalid merkle tree depth.
|
||||
pub fn invalid_merkle_tree_depth(&self) -> usize { self.0 }
|
||||
}
|
||||
|
||||
internals::impl_from_infallible!(InvalidMerkleTreeDepthError);
|
||||
|
||||
impl fmt::Display for InvalidMerkleTreeDepthError {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
write!(
|
||||
f,
|
||||
"Merkle tree depth({}) must be less than {}",
|
||||
self.0, TAPROOT_CONTROL_MAX_NODE_COUNT
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "std")]
|
||||
impl std::error::Error for InvalidMerkleTreeDepthError {}
|
||||
|
||||
/// The last bit of tapleaf version must be zero.
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub struct InvalidTaprootLeafVersionError(u8);
|
||||
|
||||
impl InvalidTaprootLeafVersionError {
|
||||
/// Accessor for the invalid leaf version.
|
||||
pub fn invalid_leaf_version(&self) -> u8 { self.0 }
|
||||
}
|
||||
|
||||
internals::impl_from_infallible!(InvalidTaprootLeafVersionError);
|
||||
|
||||
impl fmt::Display for InvalidTaprootLeafVersionError {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
write!(f, "leaf version({}) must have the least significant bit 0", self.0)
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "std")]
|
||||
impl std::error::Error for InvalidTaprootLeafVersionError {}
|
||||
|
||||
/// Invalid control block size.
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub struct InvalidControlBlockSizeError(usize);
|
||||
|
||||
impl InvalidControlBlockSizeError {
|
||||
/// Accessor for the invalid control block size.
|
||||
pub fn invalid_control_block_size(&self) -> usize { self.0 }
|
||||
}
|
||||
|
||||
internals::impl_from_infallible!(InvalidControlBlockSizeError);
|
||||
|
||||
impl fmt::Display for InvalidControlBlockSizeError {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
write!(
|
||||
f,
|
||||
"Control Block size({}) must be of the form 33 + 32*m where 0 <= m <= {} ",
|
||||
self.0, TAPROOT_CONTROL_MAX_NODE_COUNT
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "std")]
|
||||
impl std::error::Error for InvalidControlBlockSizeError {}
|
||||
|
||||
#[cfg(test)]
|
||||
mod test {
|
||||
use core::str::FromStr;
|
||||
|
|
Loading…
Reference in New Issue