Enum bitcoin::sighash::TapSighashType
source · pub enum TapSighashType {
Default = 0,
All = 1,
None = 2,
Single = 3,
AllPlusAnyoneCanPay = 129,
NonePlusAnyoneCanPay = 130,
SinglePlusAnyoneCanPay = 131,
}
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 = 0
0x0: Used when not explicitly specified, defaults to TapSighashType::All
All = 1
0x1: Sign all outputs.
None = 2
0x2: Sign no outputs — anyone can choose the destination.
Single = 3
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 = 129
0x81: Sign all outputs but only this input.
NonePlusAnyoneCanPay = 130
0x82: Sign no outputs and only this input.
SinglePlusAnyoneCanPay = 131
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 for TapSighashType
impl PartialEq 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 for TapSighashType
impl PartialOrd 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