#[repr(u8)]pub enum WitnessVersion {
Show 17 variants
V0 = 0,
V1 = 1,
V2 = 2,
V3 = 3,
V4 = 4,
V5 = 5,
V6 = 6,
V7 = 7,
V8 = 8,
V9 = 9,
V10 = 10,
V11 = 11,
V12 = 12,
V13 = 13,
V14 = 14,
V15 = 15,
V16 = 16,
}
Expand description
Version of the segregated witness program.
Helps limit possible versions of the witness according to the specification. If a plain u8
type was used instead it would mean that the version may be > 16, which would be incorrect.
First byte of scriptPubkey
in transaction output for transactions starting with opcodes
ranging from 0 to 16 (inclusive).
Variants§
V0 = 0
Initial version of witness program. Used for P2WPKH and P2WPK outputs
V1 = 1
Version of witness program used for Taproot P2TR outputs.
V2 = 2
Future (unsupported) version of witness program.
V3 = 3
Future (unsupported) version of witness program.
V4 = 4
Future (unsupported) version of witness program.
V5 = 5
Future (unsupported) version of witness program.
V6 = 6
Future (unsupported) version of witness program.
V7 = 7
Future (unsupported) version of witness program.
V8 = 8
Future (unsupported) version of witness program.
V9 = 9
Future (unsupported) version of witness program.
V10 = 10
Future (unsupported) version of witness program.
V11 = 11
Future (unsupported) version of witness program.
V12 = 12
Future (unsupported) version of witness program.
V13 = 13
Future (unsupported) version of witness program.
V14 = 14
Future (unsupported) version of witness program.
V15 = 15
Future (unsupported) version of witness program.
V16 = 16
Future (unsupported) version of witness program.
Implementations§
source§impl WitnessVersion
impl WitnessVersion
sourcepub fn to_num(self) -> u8
pub fn to_num(self) -> u8
Returns integer version number representation for a given WitnessVersion
value.
NB: this is not the same as an integer representation of the opcode signifying witness version in bitcoin script. Thus, there is no function to directly convert witness version into a byte since the conversion requires context (bitcoin script or just a version number).
Trait Implementations§
source§impl Clone for WitnessVersion
impl Clone for WitnessVersion
source§fn clone(&self) -> WitnessVersion
fn clone(&self) -> WitnessVersion
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for WitnessVersion
impl Debug for WitnessVersion
source§impl Display for WitnessVersion
impl Display for WitnessVersion
Prints WitnessVersion
number (from 0 to 16) as integer, without any prefix or suffix.
source§impl From<WitnessVersion> for Fe32
impl From<WitnessVersion> for Fe32
source§fn from(version: WitnessVersion) -> Self
fn from(version: WitnessVersion) -> Self
source§impl From<WitnessVersion> for Opcode
impl From<WitnessVersion> for Opcode
source§fn from(version: WitnessVersion) -> Opcode
fn from(version: WitnessVersion) -> Opcode
source§impl FromStr for WitnessVersion
impl FromStr for WitnessVersion
source§impl Hash for WitnessVersion
impl Hash for WitnessVersion
source§impl Ord for WitnessVersion
impl Ord for WitnessVersion
source§fn cmp(&self, other: &WitnessVersion) -> Ordering
fn cmp(&self, other: &WitnessVersion) -> 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 WitnessVersion
impl PartialEq for WitnessVersion
source§fn eq(&self, other: &WitnessVersion) -> bool
fn eq(&self, other: &WitnessVersion) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd for WitnessVersion
impl PartialOrd for WitnessVersion
source§fn partial_cmp(&self, other: &WitnessVersion) -> Option<Ordering>
fn partial_cmp(&self, other: &WitnessVersion) -> 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