pub struct NodeInfo { /* private fields */ }
Expand description
Represents the node information in taproot tree. In contrast to TapTree
, this
is allowed to have hidden leaves as children.
Helper type used in merkle tree construction allowing one to build sparse merkle trees. The node
represents part of the tree that has information about all of its descendants.
See how TaprootBuilder
works for more details.
You can use TaprootSpendInfo::from_node_info
to a get a TaprootSpendInfo
from the merkle
root NodeInfo
.
Implementations§
source§impl NodeInfo
impl NodeInfo
Creates a new NodeInfo
with omitted/hidden info.
sourcepub fn new_leaf_with_ver(script: ScriptBuf, ver: LeafVersion) -> Self
pub fn new_leaf_with_ver(script: ScriptBuf, ver: LeafVersion) -> Self
Creates a new leaf NodeInfo
with given ScriptBuf
and LeafVersion
.
sourcepub fn combine(a: Self, b: Self) -> Result<Self, TaprootBuilderError>
pub fn combine(a: Self, b: Self) -> Result<Self, TaprootBuilderError>
Combines two NodeInfo
to create a new parent.
sourcepub fn leaf_nodes(&self) -> LeafNodes<'_> ⓘ
pub fn leaf_nodes(&self) -> LeafNodes<'_> ⓘ
Creates an iterator over all leaves (including hidden leaves) in the tree.
sourcepub fn node_hash(&self) -> TapNodeHash
pub fn node_hash(&self) -> TapNodeHash
Returns the root TapNodeHash
of this node info.
Trait Implementations§
source§impl<'de> Deserialize<'de> for NodeInfo
impl<'de> Deserialize<'de> for NodeInfo
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Ord for NodeInfo
impl Ord for NodeInfo
source§impl PartialEq<NodeInfo> for NodeInfo
impl PartialEq<NodeInfo> for NodeInfo
source§impl PartialOrd<NodeInfo> for NodeInfo
impl PartialOrd<NodeInfo> for NodeInfo
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresource§impl TryFrom<NodeInfo> for TapTree
impl TryFrom<NodeInfo> for TapTree
source§impl TryFrom<TaprootBuilder> for NodeInfo
impl TryFrom<TaprootBuilder> for NodeInfo
§type Error = IncompleteBuilderError
type Error = IncompleteBuilderError
The type returned in the event of a conversion error.
impl Eq for NodeInfo
Auto Trait Implementations§
impl RefUnwindSafe for NodeInfo
impl Send for NodeInfo
impl Sync for NodeInfo
impl Unpin for NodeInfo
impl UnwindSafe for NodeInfo
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more