1 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Default serialization/deserialization methods."><title>SerdeHash in bdk_chain::bitcoin::hashes::serde_macros::serde_details - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../../../static.files/rustdoc-5d1d17d0.css"><meta name="rustdoc-vars" data-root-path="../../../../../" data-static-root-path="../../../../../static.files/" data-current-crate="bdk_chain" data-themes="" data-resource-suffix="" data-rustdoc-version="1.86.0-nightly (f3d1d47fd 2025-01-20)" data-channel="nightly" data-search-js="search-ccb196c1.js" data-settings-js="settings-0f613d39.js" ><script src="../../../../../static.files/storage-59e33391.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../../../../static.files/main-5f194d8c.js"></script><noscript><link rel="stylesheet" href="../../../../../static.files/noscript-893ab5e7.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../../../../static.files/favicon-044be391.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button><a class="logo-container" href="../../../../../bdk_chain/index.html"><img src="https://github.com/bitcoindevkit/bdk/raw/master/static/bdk.png" alt=""></a></nav><nav class="sidebar"><div class="sidebar-crate"><a class="logo-container" href="../../../../../bdk_chain/index.html"><img src="https://github.com/bitcoindevkit/bdk/raw/master/static/bdk.png" alt="logo"></a><h2><a href="../../../../../bdk_chain/index.html">bdk_<wbr>chain</a><span class="version">0.21.1</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Serde<wbr>Hash</a></h2><h3><a href="#required-associated-consts">Required Associated Constants</a></h3><ul class="block"><li><a href="#associatedconstant.N" title="N">N</a></li></ul><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.from_slice_delegated" title="from_slice_delegated">from_slice_delegated</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.deserialize" title="deserialize">deserialize</a></li><li><a href="#method.serialize" title="serialize">serialize</a></li></ul><h3><a href="#foreign-impls">Implementations on Foreign Types</a></h3><ul class="block"><li><a href="#impl-SerdeHash-for-Hash" title="Hash">Hash</a></li></ul><h3><a href="#dyn-compatibility">Dyn Compatibility</a></h3><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In bdk_<wbr>chain::<wbr>bitcoin::<wbr>hashes::<wbr>serde_<wbr>macros::<wbr>serde_<wbr>details</a></h2></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="../../../../index.html">bdk_chain</a>::<wbr><a href="../../../index.html">bitcoin</a>::<wbr><a href="../../index.html">hashes</a>::<wbr><a href="../index.html">serde_macros</a>::<wbr><a href="index.html">serde_details</a></span><h1>Trait <span class="trait">SerdeHash</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><pre class="rust item-decl"><code>pub trait SerdeHash:
2 <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>
3 + <a class="trait" href="https://doc.rust-lang.org/nightly/core/str/traits/trait.FromStr.html" title="trait core::str::traits::FromStr">FromStr</a>
4 + <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a>
5 + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, Output = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>, Output = [<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]>
6 + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFull.html" title="struct core::ops::range::RangeFull">RangeFull</a>><div class="where">where
7 Self::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/str/traits/trait.FromStr.html#associatedtype.Err" title="type core::str::traits::FromStr::Err">Err</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a>,</div>{
8 const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>;
11 fn <a href="#tymethod.from_slice_delegated" class="fn">from_slice_delegated</a>(sl: &[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, <a class="struct" href="../../struct.FromSliceError.html" title="struct bdk_chain::bitcoin::hashes::FromSliceError">FromSliceError</a>>;
14 fn <a href="#method.serialize" class="fn">serialize</a><S>(
17 ) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<S as <a class="trait" href="../../serde/trait.Serializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Serializer">Serializer</a>>::<a class="associatedtype" href="../../serde/trait.Serializer.html#associatedtype.Ok" title="type bdk_chain::bitcoin::hashes::serde::Serializer::Ok">Ok</a>, <S as <a class="trait" href="../../serde/trait.Serializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Serializer">Serializer</a>>::<a class="associatedtype" href="../../serde/trait.Serializer.html#associatedtype.Error" title="type bdk_chain::bitcoin::hashes::serde::Serializer::Error">Error</a>>
18 <span class="where">where S: <a class="trait" href="../../serde/trait.Serializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Serializer">Serializer</a></span> { ... }
19 <span class="item-spacer"></span> fn <a href="#method.deserialize" class="fn">deserialize</a><'de, D>(
21 ) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, <D as <a class="trait" href="../../serde/trait.Deserializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Deserializer">Deserializer</a><'de>>::<a class="associatedtype" href="../../serde/trait.Deserializer.html#associatedtype.Error" title="type bdk_chain::bitcoin::hashes::serde::Deserializer::Error">Error</a>>
22 <span class="where">where D: <a class="trait" href="../../serde/trait.Deserializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Deserializer">Deserializer</a><'de></span> { ... }
23 }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Default serialization/deserialization methods.</p>
24 </div></details><h2 id="required-associated-consts" class="section-header">Required Associated Constants<a href="#required-associated-consts" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedconstant.N" class="method"><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Size, in bits, of the hash.</p>
25 </div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.from_slice_delegated" class="method"><h4 class="code-header">fn <a href="#tymethod.from_slice_delegated" class="fn">from_slice_delegated</a>(sl: &[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, <a class="struct" href="../../struct.FromSliceError.html" title="struct bdk_chain::bitcoin::hashes::FromSliceError">FromSliceError</a>></h4></section></summary><div class="docblock"><p>Helper function to turn a deserialized slice into the correct hash type.</p>
26 </div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.serialize" class="method"><h4 class="code-header">fn <a href="#method.serialize" class="fn">serialize</a><S>(
29 ) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<S as <a class="trait" href="../../serde/trait.Serializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Serializer">Serializer</a>>::<a class="associatedtype" href="../../serde/trait.Serializer.html#associatedtype.Ok" title="type bdk_chain::bitcoin::hashes::serde::Serializer::Ok">Ok</a>, <S as <a class="trait" href="../../serde/trait.Serializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Serializer">Serializer</a>>::<a class="associatedtype" href="../../serde/trait.Serializer.html#associatedtype.Error" title="type bdk_chain::bitcoin::hashes::serde::Serializer::Error">Error</a>><div class="where">where
30 S: <a class="trait" href="../../serde/trait.Serializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Serializer">Serializer</a>,</div></h4></section></summary><div class="docblock"><p>Do serde serialization.</p>
31 </div></details><details class="toggle method-toggle" open><summary><section id="method.deserialize" class="method"><h4 class="code-header">fn <a href="#method.deserialize" class="fn">deserialize</a><'de, D>(d: D) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, <D as <a class="trait" href="../../serde/trait.Deserializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Deserializer">Deserializer</a><'de>>::<a class="associatedtype" href="../../serde/trait.Deserializer.html#associatedtype.Error" title="type bdk_chain::bitcoin::hashes::serde::Deserializer::Error">Error</a>><div class="where">where
32 D: <a class="trait" href="../../serde/trait.Deserializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div class="docblock"><p>Do serde deserialization.</p>
33 </div></details></div><h2 id="dyn-compatibility" class="section-header">Dyn Compatibility<a href="#dyn-compatibility" class="anchor">§</a></h2><div class="dyn-compatibility-info"><p>This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#object-safety">dyn compatible</a>.</p><p><i>In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.</i></p></div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash" class="impl"><a href="#impl-SerdeHash-for-Hash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for Hash</h3></section></summary><div class="impl-items"><section id="associatedconstant.N-1" class="associatedconstant trait-impl"><a href="#associatedconstant.N-1" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section><section id="method.from_slice_delegated" class="method trait-impl"><a href="#method.from_slice_delegated" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.from_slice_delegated" class="fn">from_slice_delegated</a>(sl: &[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Hash, <a class="struct" href="../../struct.FromSliceError.html" title="struct bdk_chain::bitcoin::hashes::FromSliceError">FromSliceError</a>></h4></section></div></details><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-DescriptorId" class="impl"><a class="src rightside" href="../../../../../src/bdk_chain/descriptor_ext.rs.html#5-13">Source</a><a href="#impl-SerdeHash-for-DescriptorId" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../../struct.DescriptorId.html" title="struct bdk_chain::DescriptorId">DescriptorId</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-2" class="associatedconstant trait-impl"><a class="src rightside" href="../../../../../src/bdk_chain/descriptor_ext.rs.html#5-13">Source</a><a href="#associatedconstant.N-2" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-BlockHash" class="impl"><a href="#impl-SerdeHash-for-BlockHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.BlockHash.html" title="struct bdk_chain::bitcoin::BlockHash">BlockHash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-3" class="associatedconstant trait-impl"><a href="#associatedconstant.N-3" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-FilterHash" class="impl"><a href="#impl-SerdeHash-for-FilterHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.FilterHash.html" title="struct bdk_chain::bitcoin::FilterHash">FilterHash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-4" class="associatedconstant trait-impl"><a href="#associatedconstant.N-4" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-FilterHeader" class="impl"><a href="#impl-SerdeHash-for-FilterHeader" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.FilterHeader.html" title="struct bdk_chain::bitcoin::FilterHeader">FilterHeader</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-5" class="associatedconstant trait-impl"><a href="#associatedconstant.N-5" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-LegacySighash" class="impl"><a href="#impl-SerdeHash-for-LegacySighash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.LegacySighash.html" title="struct bdk_chain::bitcoin::LegacySighash">LegacySighash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-6" class="associatedconstant trait-impl"><a href="#associatedconstant.N-6" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-PubkeyHash" class="impl"><a href="#impl-SerdeHash-for-PubkeyHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.PubkeyHash.html" title="struct bdk_chain::bitcoin::PubkeyHash">PubkeyHash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-7" class="associatedconstant trait-impl"><a href="#associatedconstant.N-7" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 20usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-ScriptHash" class="impl"><a href="#impl-SerdeHash-for-ScriptHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.ScriptHash.html" title="struct bdk_chain::bitcoin::ScriptHash">ScriptHash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-8" class="associatedconstant trait-impl"><a href="#associatedconstant.N-8" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 20usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-SegwitV0Sighash" class="impl"><a href="#impl-SerdeHash-for-SegwitV0Sighash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.SegwitV0Sighash.html" title="struct bdk_chain::bitcoin::SegwitV0Sighash">SegwitV0Sighash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-9" class="associatedconstant trait-impl"><a href="#associatedconstant.N-9" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-TapLeafHash" class="impl"><a href="#impl-SerdeHash-for-TapLeafHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.TapLeafHash.html" title="struct bdk_chain::bitcoin::TapLeafHash">TapLeafHash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-10" class="associatedconstant trait-impl"><a href="#associatedconstant.N-10" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-TapNodeHash" class="impl"><a href="#impl-SerdeHash-for-TapNodeHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.TapNodeHash.html" title="struct bdk_chain::bitcoin::TapNodeHash">TapNodeHash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-11" class="associatedconstant trait-impl"><a href="#associatedconstant.N-11" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-TapSighash" class="impl"><a href="#impl-SerdeHash-for-TapSighash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.TapSighash.html" title="struct bdk_chain::bitcoin::TapSighash">TapSighash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-12" class="associatedconstant trait-impl"><a href="#associatedconstant.N-12" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-TapTweakHash" class="impl"><a href="#impl-SerdeHash-for-TapTweakHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.TapTweakHash.html" title="struct bdk_chain::bitcoin::TapTweakHash">TapTweakHash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-13" class="associatedconstant trait-impl"><a href="#associatedconstant.N-13" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-TxMerkleNode" class="impl"><a href="#impl-SerdeHash-for-TxMerkleNode" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.TxMerkleNode.html" title="struct bdk_chain::bitcoin::TxMerkleNode">TxMerkleNode</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-14" class="associatedconstant trait-impl"><a href="#associatedconstant.N-14" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Txid" class="impl"><a href="#impl-SerdeHash-for-Txid" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.Txid.html" title="struct bdk_chain::bitcoin::Txid">Txid</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-15" class="associatedconstant trait-impl"><a href="#associatedconstant.N-15" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-WPubkeyHash" class="impl"><a href="#impl-SerdeHash-for-WPubkeyHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.WPubkeyHash.html" title="struct bdk_chain::bitcoin::WPubkeyHash">WPubkeyHash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-16" class="associatedconstant trait-impl"><a href="#associatedconstant.N-16" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 20usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-WScriptHash" class="impl"><a href="#impl-SerdeHash-for-WScriptHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.WScriptHash.html" title="struct bdk_chain::bitcoin::WScriptHash">WScriptHash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-17" class="associatedconstant trait-impl"><a href="#associatedconstant.N-17" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-WitnessCommitment" class="impl"><a href="#impl-SerdeHash-for-WitnessCommitment" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.WitnessCommitment.html" title="struct bdk_chain::bitcoin::WitnessCommitment">WitnessCommitment</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-18" class="associatedconstant trait-impl"><a href="#associatedconstant.N-18" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-WitnessMerkleNode" class="impl"><a href="#impl-SerdeHash-for-WitnessMerkleNode" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.WitnessMerkleNode.html" title="struct bdk_chain::bitcoin::WitnessMerkleNode">WitnessMerkleNode</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-19" class="associatedconstant trait-impl"><a href="#associatedconstant.N-19" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Wtxid" class="impl"><a href="#impl-SerdeHash-for-Wtxid" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.Wtxid.html" title="struct bdk_chain::bitcoin::Wtxid">Wtxid</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-20" class="associatedconstant trait-impl"><a href="#associatedconstant.N-20" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-XKeyIdentifier" class="impl"><a href="#impl-SerdeHash-for-XKeyIdentifier" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../../struct.XKeyIdentifier.html" title="struct bdk_chain::bitcoin::XKeyIdentifier">XKeyIdentifier</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-21" class="associatedconstant trait-impl"><a href="#associatedconstant.N-21" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 20usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash-1" class="impl"><a href="#impl-SerdeHash-for-Hash-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for bdk_chain::bitcoin::hashes::hash160::<a class="struct" href="../../hash160/struct.Hash.html" title="struct bdk_chain::bitcoin::hashes::hash160::Hash">Hash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-22" class="associatedconstant trait-impl"><a href="#associatedconstant.N-22" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 20usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash-2" class="impl"><a href="#impl-SerdeHash-for-Hash-2" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for bdk_chain::bitcoin::hashes::ripemd160::<a class="struct" href="../../ripemd160/struct.Hash.html" title="struct bdk_chain::bitcoin::hashes::ripemd160::Hash">Hash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-23" class="associatedconstant trait-impl"><a href="#associatedconstant.N-23" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 20usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash-3" class="impl"><a href="#impl-SerdeHash-for-Hash-3" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for bdk_chain::bitcoin::hashes::sha1::<a class="struct" href="../../sha1/struct.Hash.html" title="struct bdk_chain::bitcoin::hashes::sha1::Hash">Hash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-24" class="associatedconstant trait-impl"><a href="#associatedconstant.N-24" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 20usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash-4" class="impl"><a href="#impl-SerdeHash-for-Hash-4" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for bdk_chain::bitcoin::hashes::sha256::<a class="struct" href="../../sha256/struct.Hash.html" title="struct bdk_chain::bitcoin::hashes::sha256::Hash">Hash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-25" class="associatedconstant trait-impl"><a href="#associatedconstant.N-25" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Midstate" class="impl"><a href="#impl-SerdeHash-for-Midstate" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for <a class="struct" href="../../sha256/struct.Midstate.html" title="struct bdk_chain::bitcoin::hashes::sha256::Midstate">Midstate</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-26" class="associatedconstant trait-impl"><a href="#associatedconstant.N-26" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash-5" class="impl"><a href="#impl-SerdeHash-for-Hash-5" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for bdk_chain::bitcoin::hashes::sha256d::<a class="struct" href="../../sha256d/struct.Hash.html" title="struct bdk_chain::bitcoin::hashes::sha256d::Hash">Hash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-27" class="associatedconstant trait-impl"><a href="#associatedconstant.N-27" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash-6" class="impl"><a href="#impl-SerdeHash-for-Hash-6" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for bdk_chain::bitcoin::hashes::sha384::<a class="struct" href="../../sha384/struct.Hash.html" title="struct bdk_chain::bitcoin::hashes::sha384::Hash">Hash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-28" class="associatedconstant trait-impl"><a href="#associatedconstant.N-28" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 48usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash-7" class="impl"><a href="#impl-SerdeHash-for-Hash-7" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for bdk_chain::bitcoin::hashes::sha512::<a class="struct" href="../../sha512/struct.Hash.html" title="struct bdk_chain::bitcoin::hashes::sha512::Hash">Hash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-29" class="associatedconstant trait-impl"><a href="#associatedconstant.N-29" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 64usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash-8" class="impl"><a href="#impl-SerdeHash-for-Hash-8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for bdk_chain::bitcoin::hashes::sha512_256::<a class="struct" href="../../sha512_256/struct.Hash.html" title="struct bdk_chain::bitcoin::hashes::sha512_256::Hash">Hash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-30" class="associatedconstant trait-impl"><a href="#associatedconstant.N-30" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash-9" class="impl"><a href="#impl-SerdeHash-for-Hash-9" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for bdk_chain::bitcoin::hashes::siphash24::<a class="struct" href="../../siphash24/struct.Hash.html" title="struct bdk_chain::bitcoin::hashes::siphash24::Hash">Hash</a></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-31" class="associatedconstant trait-impl"><a href="#associatedconstant.N-31" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 8usize</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SerdeHash-for-Hash%3CT%3E" class="impl"><a href="#impl-SerdeHash-for-Hash%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="trait.SerdeHash.html" title="trait bdk_chain::bitcoin::hashes::serde_macros::serde_details::SerdeHash">SerdeHash</a> for bdk_chain::bitcoin::hashes::sha256t::<a class="struct" href="../../sha256t/struct.Hash.html" title="struct bdk_chain::bitcoin::hashes::sha256t::Hash">Hash</a><T><div class="where">where
34 T: <a class="trait" href="../../sha256t/trait.Tag.html" title="trait bdk_chain::bitcoin::hashes::sha256t::Tag">Tag</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedconstant.N-32" class="associatedconstant trait-impl"><a href="#associatedconstant.N-32" class="anchor">§</a><h4 class="code-header">const <a href="#associatedconstant.N" class="constant">N</a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> = 32usize</h4></section></div></details></div><script src="../../../../../trait.impl/bitcoin_hashes/serde_macros/serde_details/trait.SerdeHash.js" data-ignore-extern-crates="bitcoin,bitcoin_hashes,miniscript" async></script></section></div></main></body></html>