Struct bitcoin_scripts::LeafScript
source · pub struct LeafScript {
pub version: LeafVersion,
pub script: LockScript,
}
Expand description
Any valid branch of taproot script spending
Fields§
§version: LeafVersion
Leaf version of the script.
script: LockScript
Script data.
Implementations§
source§impl LeafScript
impl LeafScript
sourcepub fn tapscript(script: TapScript) -> LeafScript
pub fn tapscript(script: TapScript) -> LeafScript
Constructs tapscript.
sourcepub fn with(version: LeafVersion, script: LockScript) -> LeafScript
pub fn with(version: LeafVersion, script: LockScript) -> LeafScript
Constructs leaf script from a leaf version and a script.
sourcepub fn tap_leaf_hash(&self) -> TapLeafHash
pub fn tap_leaf_hash(&self) -> TapLeafHash
Computes TapLeafHash
for a given leaf script.
Trait Implementations§
source§impl Clone for LeafScript
impl Clone for LeafScript
source§fn clone(&self) -> LeafScript
fn clone(&self) -> LeafScript
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for LeafScript
impl Debug for LeafScript
source§impl Display for LeafScript
impl Display for LeafScript
source§impl From<TapScript> for LeafScript
impl From<TapScript> for LeafScript
source§impl Hash for LeafScript
impl Hash for LeafScript
source§impl Ord for LeafScript
impl Ord for LeafScript
source§fn cmp(&self, other: &LeafScript) -> Ordering
fn cmp(&self, other: &LeafScript) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq<LeafScript> for LeafScript
impl PartialEq<LeafScript> for LeafScript
source§fn eq(&self, other: &LeafScript) -> bool
fn eq(&self, other: &LeafScript) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<LeafScript> for LeafScript
impl PartialOrd<LeafScript> for LeafScript
source§fn partial_cmp(&self, other: &LeafScript) -> Option<Ordering>
fn partial_cmp(&self, other: &LeafScript) -> Option<Ordering>
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 StrictDecode for LeafScript
impl StrictDecode for LeafScript
source§fn strict_decode<D: Read>(d: D) -> Result<Self, Error>
fn strict_decode<D: Read>(d: D) -> Result<Self, Error>
Decode with the given
std::io::Read
instance; must either
construct an instance or return implementation-specific error type.source§fn strict_deserialize(data: impl AsRef<[u8]>) -> Result<Self, Error>
fn strict_deserialize(data: impl AsRef<[u8]>) -> Result<Self, Error>
Tries to deserialize byte array into the current type using
StrictDecode::strict_decode
. If there are some data remains in the
buffer once deserialization is completed, fails with
Error::DataNotEntirelyConsumed
. Use io::Cursor
over the buffer and
StrictDecode::strict_decode
to avoid such failures.source§fn strict_file_load(path: impl AsRef<Path>) -> Result<Self, Error>
fn strict_file_load(path: impl AsRef<Path>) -> Result<Self, Error>
Reads data from file at
path
and reconstructs object from it. Fails
with Error::DataNotEntirelyConsumed
if file contains remaining
data after the object reconstruction.source§impl StrictEncode for LeafScript
impl StrictEncode for LeafScript
source§fn strict_encode<E: Write>(&self, e: E) -> Result<usize, Error>
fn strict_encode<E: Write>(&self, e: E) -> Result<usize, Error>
Encode with the given
std::io::Write
instance; must return result
with either amount of bytes encoded – or implementation-specific
error type.source§fn strict_serialize(&self) -> Result<Vec<u8, Global>, Error>
fn strict_serialize(&self) -> Result<Vec<u8, Global>, Error>
Serializes data as a byte array using
StrictEncode::strict_encode
function