What changed, and why it matters
This commit only updates generated text files that list the public API surface of the Rust Bitcoin library. No actual source code, logic, or behavior changed. The files record that the `Block` type now carries a validation-state marker (`Unchecked`/`Checked`) and that some error types were added, but these are documentation artifacts, not a security patch.
No security action needed. Treat as routine API-snapshot maintenance. If the API changes themselves are of interest, review the preceding source-code commits that actually introduced the `Block<Validation>` design and new error types.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The diff modifies api/primitives/all-features.txt and api/primitives/alloc-only.txt, which are rustdoc/public-API snapshot files used to track API changes. The edits reflect pre-existing source-code changes elsewhere: Block becomes generic over a Validation state, Encodable/Decodable/FromStr impls are narrowed or generalized, and new error types such as ParseBlockError appear. Because the commit contains no executable code, no vulnerability is introduced or fixed here.
Changed components
api/primitives/all-features.txtapi/primitives/alloc-only.txtInspect captured patch +37 / −12
diff --git a/api/primitives/all-features.txt b/api/primitives/all-features.txt
index 2e1ad216..0176a754 100644
--- a/api/primitives/all-features.txt
+++ b/api/primitives/all-features.txt
@@ -5,7 +5,7 @@
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::BlockHash
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::TxMerkleNode
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::WitnessMerkleNode
-impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::block::Block
+impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::block::Header
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::block::Version
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::transaction::OutPoint
@@ -28,7 +28,6 @@ impl bitcoin_consensus_encoding::decode::Decoder for bitcoin_primitives::witness
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::BlockHash
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::TxMerkleNode
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::WitnessMerkleNode
-impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::block::Block
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::block::Header
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::block::Version
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::transaction::OutPoint
@@ -305,11 +304,14 @@ impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::bloc
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::block::BlockHashDecoderError
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::block::HeaderDecoderError
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::block::InvalidBlockError
+impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::block::ParseBlockError
+impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::block::ParseHeaderError
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::block::VersionDecoderError
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::script::RedeemScriptSizeError
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::script::ScriptBufDecoderError
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::script::WitnessScriptSizeError
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::transaction::ParseOutPointError
+impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::transaction::ParseTransactionError
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::transaction::TransactionDecoderError
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::transaction::TxInDecoderError
impl core::convert::From<core::convert::Infallible> for bitcoin_primitives::transaction::TxMerkleNodeDecoderError
@@ -332,6 +334,7 @@ impl core::error::Error for bitcoin_primitives::block::BlockDecoderError
impl core::error::Error for bitcoin_primitives::block::BlockHashDecoderError
impl core::error::Error for bitcoin_primitives::block::HeaderDecoderError
impl core::error::Error for bitcoin_primitives::block::InvalidBlockError
+impl core::error::Error for bitcoin_primitives::block::ParseBlockError
impl core::error::Error for bitcoin_primitives::block::ParseHeaderError
impl core::error::Error for bitcoin_primitives::block::VersionDecoderError
impl core::error::Error for bitcoin_primitives::script::RedeemScriptSizeError
@@ -362,6 +365,7 @@ impl core::fmt::Debug for bitcoin_primitives::block::Checked
impl core::fmt::Debug for bitcoin_primitives::block::Header
impl core::fmt::Debug for bitcoin_primitives::block::HeaderDecoderError
impl core::fmt::Debug for bitcoin_primitives::block::InvalidBlockError
+impl core::fmt::Debug for bitcoin_primitives::block::ParseBlockError
impl core::fmt::Debug for bitcoin_primitives::block::ParseHeaderError
impl core::fmt::Debug for bitcoin_primitives::block::Unchecked
impl core::fmt::Debug for bitcoin_primitives::block::Version
@@ -399,6 +403,7 @@ impl core::fmt::Display for bitcoin_primitives::block::BlockHashDecoderError
impl core::fmt::Display for bitcoin_primitives::block::Header
impl core::fmt::Display for bitcoin_primitives::block::HeaderDecoderError
impl core::fmt::Display for bitcoin_primitives::block::InvalidBlockError
+impl core::fmt::Display for bitcoin_primitives::block::ParseBlockError
impl core::fmt::Display for bitcoin_primitives::block::ParseHeaderError
impl core::fmt::Display for bitcoin_primitives::block::Version
impl core::fmt::Display for bitcoin_primitives::block::VersionDecoderError
@@ -502,6 +507,7 @@ impl core::marker::Freeze for bitcoin_primitives::block::Header
impl core::marker::Freeze for bitcoin_primitives::block::HeaderDecoder
impl core::marker::Freeze for bitcoin_primitives::block::HeaderDecoderError
impl core::marker::Freeze for bitcoin_primitives::block::InvalidBlockError
+impl core::marker::Freeze for bitcoin_primitives::block::ParseBlockError
impl core::marker::Freeze for bitcoin_primitives::block::ParseHeaderError
impl core::marker::Freeze for bitcoin_primitives::block::Unchecked
impl core::marker::Freeze for bitcoin_primitives::block::Version
@@ -556,6 +562,7 @@ impl core::marker::Send for bitcoin_primitives::block::Header
impl core::marker::Send for bitcoin_primitives::block::HeaderDecoder
impl core::marker::Send for bitcoin_primitives::block::HeaderDecoderError
impl core::marker::Send for bitcoin_primitives::block::InvalidBlockError
+impl core::marker::Send for bitcoin_primitives::block::ParseBlockError
impl core::marker::Send for bitcoin_primitives::block::ParseHeaderError
impl core::marker::Send for bitcoin_primitives::block::Unchecked
impl core::marker::Send for bitcoin_primitives::block::Version
@@ -651,6 +658,7 @@ impl core::marker::Sync for bitcoin_primitives::block::Header
impl core::marker::Sync for bitcoin_primitives::block::HeaderDecoder
impl core::marker::Sync for bitcoin_primitives::block::HeaderDecoderError
impl core::marker::Sync for bitcoin_primitives::block::InvalidBlockError
+impl core::marker::Sync for bitcoin_primitives::block::ParseBlockError
impl core::marker::Sync for bitcoin_primitives::block::ParseHeaderError
impl core::marker::Sync for bitcoin_primitives::block::Unchecked
impl core::marker::Sync for bitcoin_primitives::block::Version
@@ -705,6 +713,7 @@ impl core::marker::Unpin for bitcoin_primitives::block::Header
impl core::marker::Unpin for bitcoin_primitives::block::HeaderDecoder
impl core::marker::Unpin for bitcoin_primitives::block::HeaderDecoderError
impl core::marker::Unpin for bitcoin_primitives::block::InvalidBlockError
+impl core::marker::Unpin for bitcoin_primitives::block::ParseBlockError
impl core::marker::Unpin for bitcoin_primitives::block::ParseHeaderError
impl core::marker::Unpin for bitcoin_primitives::block::Unchecked
impl core::marker::Unpin for bitcoin_primitives::block::Version
@@ -759,6 +768,7 @@ impl core::marker::UnsafeUnpin for bitcoin_primitives::block::Header
impl core::marker::UnsafeUnpin for bitcoin_primitives::block::HeaderDecoder
impl core::marker::UnsafeUnpin for bitcoin_primitives::block::HeaderDecoderError
impl core::marker::UnsafeUnpin for bitcoin_primitives::block::InvalidBlockError
+impl core::marker::UnsafeUnpin for bitcoin_primitives::block::ParseBlockError
impl core::marker::UnsafeUnpin for bitcoin_primitives::block::ParseHeaderError
impl core::marker::UnsafeUnpin for bitcoin_primitives::block::Unchecked
impl core::marker::UnsafeUnpin for bitcoin_primitives::block::Version
@@ -814,6 +824,7 @@ impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_primitives::block::Head
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_primitives::block::HeaderDecoder
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_primitives::block::HeaderDecoderError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_primitives::block::InvalidBlockError
+impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_primitives::block::ParseBlockError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_primitives::block::ParseHeaderError
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_primitives::block::Unchecked
impl core::panic::unwind_safe::RefUnwindSafe for bitcoin_primitives::block::Version
@@ -868,6 +879,7 @@ impl core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::block::Header
impl core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::block::HeaderDecoder
impl core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::block::HeaderDecoderError
impl core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::block::InvalidBlockError
+impl core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::block::ParseBlockError
impl core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::block::ParseHeaderError
impl core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::block::Unchecked
impl core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::block::Version
@@ -913,6 +925,7 @@ impl core::str::traits::FromStr for bitcoin_primitives::Txid
impl core::str::traits::FromStr for bitcoin_primitives::WitnessCommitment
impl core::str::traits::FromStr for bitcoin_primitives::WitnessMerkleNode
impl core::str::traits::FromStr for bitcoin_primitives::Wtxid
+impl core::str::traits::FromStr for bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked> where Self: bitcoin_consensus_encoding::decode::Decodable
impl core::str::traits::FromStr for bitcoin_primitives::block::Header
impl core::str::traits::FromStr for bitcoin_primitives::script::ScriptHash
impl core::str::traits::FromStr for bitcoin_primitives::script::WScriptHash
@@ -1203,6 +1216,10 @@ impl<T> core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::script::Scr
impl<T> serde::ser::Serialize for bitcoin_primitives::script::Script<T>
impl<T> serde::ser::Serialize for bitcoin_primitives::script::ScriptBuf<T>
impl<V: bitcoin_primitives::block::Validation> bitcoin_primitives::block::Block<V>
+impl<V: bitcoin_primitives::block::Validation> core::fmt::Display for bitcoin_primitives::block::Block<V> where Self: bitcoin_consensus_encoding::encode::Encodable
+impl<V: bitcoin_primitives::block::Validation> core::fmt::LowerHex for bitcoin_primitives::block::Block<V>
+impl<V: bitcoin_primitives::block::Validation> core::fmt::UpperHex for bitcoin_primitives::block::Block<V>
+impl<V> bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::block::Block<V> where V: bitcoin_primitives::block::Validation
impl<V> core::clone::Clone for bitcoin_primitives::block::Block<V> where V: bitcoin_primitives::block::Validation + core::clone::Clone
impl<V> core::cmp::Eq for bitcoin_primitives::block::Block<V> where V: bitcoin_primitives::block::Validation + core::cmp::Eq
impl<V> core::cmp::PartialEq for bitcoin_primitives::block::Block<V> where V: bitcoin_primitives::block::Validation + core::cmp::PartialEq
@@ -1497,10 +1514,9 @@ pub fn bitcoin_primitives::Wtxid::hash<__H: core::hash::Hasher>(&self, state: &m
pub fn bitcoin_primitives::Wtxid::partial_cmp(&self, other: &bitcoin_primitives::Wtxid) -> core::option::Option<core::cmp::Ordering>
pub fn bitcoin_primitives::Wtxid::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_primitives::block::Block::arbitrary(u: &mut arbitrary::unstructured::Unstructured<'a>) -> arbitrary::error::Result<Self>
-pub fn bitcoin_primitives::block::Block::decoder() -> Self::Decoder
-pub fn bitcoin_primitives::block::Block::encoder(&self) -> Self::Encoder
pub fn bitcoin_primitives::block::Block<V>::block_hash(&self) -> bitcoin_primitives::BlockHash
pub fn bitcoin_primitives::block::Block<V>::clone(&self) -> bitcoin_primitives::block::Block<V>
+pub fn bitcoin_primitives::block::Block<V>::encoder(&self) -> Self::Encoder
pub fn bitcoin_primitives::block::Block<V>::eq(&self, other: &bitcoin_primitives::block::Block<V>) -> bool
pub fn bitcoin_primitives::block::Block<V>::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Checked>::cached_witness_root(&self) -> core::option::Option<bitcoin_primitives::WitnessMerkleNode>
@@ -1511,6 +1527,8 @@ pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::a
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::check_merkle_root(&self) -> bool
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::check_witness_commitment(&self) -> (bool, core::option::Option<bitcoin_primitives::WitnessMerkleNode>)
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::compute_witness_commitment(&self, witness_reserved_value: &[u8]) -> core::option::Option<(bitcoin_primitives::WitnessMerkleNode, bitcoin_primitives::WitnessCommitment)>
+pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::decoder() -> Self::Decoder
+pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::from_str(s: &str) -> core::result::Result<Self, Self::Err>
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::into_parts(self) -> (bitcoin_primitives::block::Header, alloc::vec::Vec<bitcoin_primitives::transaction::Transaction>)
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::new_unchecked(header: bitcoin_primitives::block::Header, transactions: alloc::vec::Vec<bitcoin_primitives::transaction::Transaction>) -> Self
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::validate(self) -> core::result::Result<bitcoin_primitives::block::Block<bitcoin_primitives::block::Checked>, bitcoin_primitives::block::InvalidBlockError>
@@ -1571,7 +1589,11 @@ pub fn bitcoin_primitives::block::InvalidBlockError::clone(&self) -> bitcoin_pri
pub fn bitcoin_primitives::block::InvalidBlockError::eq(&self, other: &bitcoin_primitives::block::InvalidBlockError) -> bool
pub fn bitcoin_primitives::block::InvalidBlockError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin_primitives::block::InvalidBlockError::from(never: core::convert::Infallible) -> Self
+pub fn bitcoin_primitives::block::ParseBlockError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
+pub fn bitcoin_primitives::block::ParseBlockError::from(never: core::convert::Infallible) -> Self
+pub fn bitcoin_primitives::block::ParseBlockError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
pub fn bitcoin_primitives::block::ParseHeaderError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
+pub fn bitcoin_primitives::block::ParseHeaderError::from(never: core::convert::Infallible) -> Self
pub fn bitcoin_primitives::block::ParseHeaderError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
pub fn bitcoin_primitives::block::Unchecked::clone(&self) -> bitcoin_primitives::block::Unchecked
pub fn bitcoin_primitives::block::Unchecked::cmp(&self, other: &bitcoin_primitives::block::Unchecked) -> core::cmp::Ordering
@@ -1788,6 +1810,7 @@ pub fn bitcoin_primitives::transaction::ParseOutPointError::fmt(&self, f: &mut c
pub fn bitcoin_primitives::transaction::ParseOutPointError::from(never: core::convert::Infallible) -> Self
pub fn bitcoin_primitives::transaction::ParseOutPointError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
pub fn bitcoin_primitives::transaction::ParseTransactionError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
+pub fn bitcoin_primitives::transaction::ParseTransactionError::from(never: core::convert::Infallible) -> Self
pub fn bitcoin_primitives::transaction::ParseTransactionError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
pub fn bitcoin_primitives::transaction::Transaction::arbitrary(u: &mut arbitrary::unstructured::Unstructured<'a>) -> arbitrary::error::Result<Self>
pub fn bitcoin_primitives::transaction::Transaction::clone(&self) -> bitcoin_primitives::transaction::Transaction
@@ -1992,6 +2015,7 @@ pub struct bitcoin_primitives::block::BlockHashEncoder<'e>(_, _)
pub struct bitcoin_primitives::block::Header
pub struct bitcoin_primitives::block::HeaderDecoder(_)
pub struct bitcoin_primitives::block::HeaderEncoder<'e>(_, _)
+pub struct bitcoin_primitives::block::ParseBlockError(_)
pub struct bitcoin_primitives::block::ParseHeaderError(_)
pub struct bitcoin_primitives::block::Version(_)
pub struct bitcoin_primitives::block::VersionDecoder(_)
@@ -2073,8 +2097,9 @@ pub type bitcoin_primitives::WitnessMerkleNode::Err = hex_conservative::error::D
pub type bitcoin_primitives::WitnessScript = bitcoin_primitives::script::Script<bitcoin_primitives::script::WitnessScriptTag>
pub type bitcoin_primitives::WitnessScriptBuf = bitcoin_primitives::script::ScriptBuf<bitcoin_primitives::script::WitnessScriptTag>
pub type bitcoin_primitives::Wtxid::Err = hex_conservative::error::DecodeFixedLengthBytesError
-pub type bitcoin_primitives::block::Block::Decoder = bitcoin_primitives::block::BlockDecoder
-pub type bitcoin_primitives::block::Block::Encoder<'e> where Self: 'e = bitcoin_consensus_encoding::encode::encoders::Encoder2<bitcoin_primitives::block::HeaderEncoder<'e>, bitcoin_consensus_encoding::encode::encoders::Encoder2<bitcoin_consensus_encoding::encode::encoders::CompactSizeEncoder, bitcoin_consensus_encoding::encode::encoders::SliceEncoder<'e, bitcoin_primitives::transaction::Transaction>>>
+pub type bitcoin_primitives::block::Block<V>::Encoder<'e> where Self: 'e = bitcoin_consensus_encoding::encode::encoders::Encoder2<bitcoin_primitives::block::HeaderEncoder<'e>, bitcoin_consensus_encoding::encode::encoders::Encoder2<bitcoin_consensus_encoding::encode::encoders::CompactSizeEncoder, bitcoin_consensus_encoding::encode::encoders::SliceEncoder<'e, bitcoin_primitives::transaction::Transaction>>>
+pub type bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::Decoder = bitcoin_primitives::block::BlockDecoder
+pub type bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::Err = bitcoin_primitives::block::ParseBlockError
pub type bitcoin_primitives::block::BlockDecoder::Error = bitcoin_primitives::block::BlockDecoderError
pub type bitcoin_primitives::block::BlockDecoder::Output = bitcoin_primitives::block::Block
pub type bitcoin_primitives::block::BlockHashDecoder::Error = bitcoin_primitives::block::BlockHashDecoderError
diff --git a/api/primitives/alloc-only.txt b/api/primitives/alloc-only.txt
index 413016e3..a5ebd26f 100644
--- a/api/primitives/alloc-only.txt
+++ b/api/primitives/alloc-only.txt
@@ -4,7 +4,7 @@
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::BlockHash
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::TxMerkleNode
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::WitnessMerkleNode
-impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::block::Block
+impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::block::Header
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::block::Version
impl bitcoin_consensus_encoding::decode::Decodable for bitcoin_primitives::transaction::OutPoint
@@ -27,7 +27,6 @@ impl bitcoin_consensus_encoding::decode::Decoder for bitcoin_primitives::witness
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::BlockHash
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::TxMerkleNode
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::WitnessMerkleNode
-impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::block::Block
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::block::Header
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::block::Version
impl bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::transaction::OutPoint
@@ -1051,6 +1050,7 @@ impl<T> core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::script::Scr
impl<T> core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::script::ScriptBuf<T> where T: core::panic::unwind_safe::UnwindSafe
impl<T> core::panic::unwind_safe::UnwindSafe for bitcoin_primitives::script::ScriptBufDecoder<T> where T: core::panic::unwind_safe::UnwindSafe
impl<V: bitcoin_primitives::block::Validation> bitcoin_primitives::block::Block<V>
+impl<V> bitcoin_consensus_encoding::encode::Encodable for bitcoin_primitives::block::Block<V> where V: bitcoin_primitives::block::Validation
impl<V> core::clone::Clone for bitcoin_primitives::block::Block<V> where V: bitcoin_primitives::block::Validation + core::clone::Clone
impl<V> core::cmp::Eq for bitcoin_primitives::block::Block<V> where V: bitcoin_primitives::block::Validation + core::cmp::Eq
impl<V> core::cmp::PartialEq for bitcoin_primitives::block::Block<V> where V: bitcoin_primitives::block::Validation + core::cmp::PartialEq
@@ -1308,10 +1308,9 @@ pub fn bitcoin_primitives::Wtxid::from(tx: &bitcoin_primitives::transaction::Tra
pub fn bitcoin_primitives::Wtxid::from(tx: bitcoin_primitives::transaction::Transaction) -> Self
pub fn bitcoin_primitives::Wtxid::hash<__H: core::hash::Hasher>(&self, state: &mut __H)
pub fn bitcoin_primitives::Wtxid::partial_cmp(&self, other: &bitcoin_primitives::Wtxid) -> core::option::Option<core::cmp::Ordering>
-pub fn bitcoin_primitives::block::Block::decoder() -> Self::Decoder
-pub fn bitcoin_primitives::block::Block::encoder(&self) -> Self::Encoder
pub fn bitcoin_primitives::block::Block<V>::block_hash(&self) -> bitcoin_primitives::BlockHash
pub fn bitcoin_primitives::block::Block<V>::clone(&self) -> bitcoin_primitives::block::Block<V>
+pub fn bitcoin_primitives::block::Block<V>::encoder(&self) -> Self::Encoder
pub fn bitcoin_primitives::block::Block<V>::eq(&self, other: &bitcoin_primitives::block::Block<V>) -> bool
pub fn bitcoin_primitives::block::Block<V>::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Checked>::cached_witness_root(&self) -> core::option::Option<bitcoin_primitives::WitnessMerkleNode>
@@ -1322,6 +1321,7 @@ pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::a
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::check_merkle_root(&self) -> bool
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::check_witness_commitment(&self) -> (bool, core::option::Option<bitcoin_primitives::WitnessMerkleNode>)
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::compute_witness_commitment(&self, witness_reserved_value: &[u8]) -> core::option::Option<(bitcoin_primitives::WitnessMerkleNode, bitcoin_primitives::WitnessCommitment)>
+pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::decoder() -> Self::Decoder
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::into_parts(self) -> (bitcoin_primitives::block::Header, alloc::vec::Vec<bitcoin_primitives::transaction::Transaction>)
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::new_unchecked(header: bitcoin_primitives::block::Header, transactions: alloc::vec::Vec<bitcoin_primitives::transaction::Transaction>) -> Self
pub fn bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::validate(self) -> core::result::Result<bitcoin_primitives::block::Block<bitcoin_primitives::block::Checked>, bitcoin_primitives::block::InvalidBlockError>
@@ -1820,8 +1820,8 @@ pub type bitcoin_primitives::WitnessMerkleNode::Decoder = bitcoin_primitives::ha
pub type bitcoin_primitives::WitnessMerkleNode::Encoder<'e> = bitcoin_primitives::hash_types::witness_merkle_node::WitnessMerkleNodeEncoder<'e>
pub type bitcoin_primitives::WitnessScript = bitcoin_primitives::script::Script<bitcoin_primitives::script::WitnessScriptTag>
pub type bitcoin_primitives::WitnessScriptBuf = bitcoin_primitives::script::ScriptBuf<bitcoin_primitives::script::WitnessScriptTag>
-pub type bitcoin_primitives::block::Block::Decoder = bitcoin_primitives::block::BlockDecoder
-pub type bitcoin_primitives::block::Block::Encoder<'e> where Self: 'e = bitcoin_consensus_encoding::encode::encoders::Encoder2<bitcoin_primitives::block::HeaderEncoder<'e>, bitcoin_consensus_encoding::encode::encoders::Encoder2<bitcoin_consensus_encoding::encode::encoders::CompactSizeEncoder, bitcoin_consensus_encoding::encode::encoders::SliceEncoder<'e, bitcoin_primitives::transaction::Transaction>>>
+pub type bitcoin_primitives::block::Block<V>::Encoder<'e> where Self: 'e = bitcoin_consensus_encoding::encode::encoders::Encoder2<bitcoin_primitives::block::HeaderEncoder<'e>, bitcoin_consensus_encoding::encode::encoders::Encoder2<bitcoin_consensus_encoding::encode::encoders::CompactSizeEncoder, bitcoin_consensus_encoding::encode::encoders::SliceEncoder<'e, bitcoin_primitives::transaction::Transaction>>>
+pub type bitcoin_primitives::block::Block<bitcoin_primitives::block::Unchecked>::Decoder = bitcoin_primitives::block::BlockDecoder
pub type bitcoin_primitives::block::BlockDecoder::Error = bitcoin_primitives::block::BlockDecoderError
pub type bitcoin_primitives::block::BlockDecoder::Output = bitcoin_primitives::block::Block
pub type bitcoin_primitives::block::BlockHashDecoder::Error = bitcoin_primitives::block::BlockHashDecoderError
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.