Enum bitcoin::sighash::TapSighashType
source · pub enum TapSighashType {
Default,
All,
None,
Single,
AllPlusAnyoneCanPay,
NonePlusAnyoneCanPay,
SinglePlusAnyoneCanPay,
}
Expand description
Hashtype of an input’s signature, encoded in the last byte of the signature. Fixed values so they can be cast as integer types for encoding.
Variants§
Default
0x0: Used when not explicitly specified, defaults to TapSighashType::All
All
0x1: Sign all outputs.
None
0x2: Sign no outputs — anyone can choose the destination.
Single
0x3: Sign the output whose index matches this input’s index. If none exists,
sign the hash 0000000000000000000000000000000000000000000000000000000000000001
.
(This rule is probably an unintentional C++ism, but it’s consensus so we have
to follow it.)
AllPlusAnyoneCanPay
0x81: Sign all outputs but only this input.
NonePlusAnyoneCanPay
0x82: Sign no outputs and only this input.
SinglePlusAnyoneCanPay
0x83: Sign one output and only this input (see Single
for what “one output” means).
Implementations§
source§impl TapSighashType
impl TapSighashType
sourcepub fn from_consensus_u8(
sighash_type: u8
) -> Result<Self, InvalidSighashTypeError>
pub fn from_consensus_u8( sighash_type: u8 ) -> Result<Self, InvalidSighashTypeError>
Constructs a TapSighashType
from a raw u8
.
Trait Implementations§
source§impl Clone for TapSighashType
impl Clone for TapSighashType
source§fn clone(&self) -> TapSighashType
fn clone(&self) -> TapSighashType
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for TapSighashType
impl Debug for TapSighashType
source§impl<'de> Deserialize<'de> for TapSighashType
impl<'de> Deserialize<'de> for TapSighashType
source§fn deserialize<D>(deserializer: D) -> Result<TapSighashType, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<TapSighashType, D::Error>where D: Deserializer<'de>,
source§impl Display for TapSighashType
impl Display for TapSighashType
source§impl From<EcdsaSighashType> for TapSighashType
impl From<EcdsaSighashType> for TapSighashType
source§fn from(s: EcdsaSighashType) -> Self
fn from(s: EcdsaSighashType) -> Self
source§impl From<TapSighashType> for PsbtSighashType
impl From<TapSighashType> for PsbtSighashType
source§fn from(taproot_hash_ty: TapSighashType) -> Self
fn from(taproot_hash_ty: TapSighashType) -> Self
source§impl FromStr for TapSighashType
impl FromStr for TapSighashType
source§impl Hash for TapSighashType
impl Hash for TapSighashType
source§impl Ord for TapSighashType
impl Ord for TapSighashType
source§fn cmp(&self, other: &TapSighashType) -> Ordering
fn cmp(&self, other: &TapSighashType) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
source§impl PartialEq<TapSighashType> for TapSighashType
impl PartialEq<TapSighashType> for TapSighashType
source§fn eq(&self, other: &TapSighashType) -> bool
fn eq(&self, other: &TapSighashType) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<TapSighashType> for TapSighashType
impl PartialOrd<TapSighashType> for TapSighashType
source§fn partial_cmp(&self, other: &TapSighashType) -> Option<Ordering>
fn partial_cmp(&self, other: &TapSighashType) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more