Struct SignatureInfo

Source
pub struct SignatureInfo {
    pub signature: SignatureType,
    pub der_encoded: DEREncoding,
    pub sig_hash: u8,
    pub length: usize,
}

Fields§

§signature: SignatureType

The actual signature wrapped in a type enum.

§der_encoded: DEREncoding

Inidcates if a ECDSA signature is strictly DER encoded. A Schnorr signature will never be DER encoded always be DEREncoding::NotApplicable.

§sig_hash: u8

SigHash flag of the signature.

§length: usize

length of the encoded signature.

Implementations§

Source§

impl SignatureInfo

Source

pub fn low_s(&self) -> bool

Source

pub fn low_r(&self) -> bool

Source

pub fn from_instruction_ecdsa( instruction: &Instruction<'_>, ) -> Option<SignatureInfo>

Returns Some(SignatureInfo) if the Instruction is a Bitcoin ECDSA Signature, otherwise None is returned.

Source

pub fn from_instruction_schnorr( instruction: &Instruction<'_>, ) -> Option<SignatureInfo>

Returns Some(SignatureInfo) if the Instruction is a Bitcoin Schnorr Signature, otherwise None is returned.

Source

pub fn from_u8_slice_ecdsa(bytes: &[u8]) -> Option<SignatureInfo>

Returns Some(SignatureInfo) if the Instruction is a Bitcoin ECDSA Signature, otherwise None is returned.

Source

pub fn from_u8_slice_schnorr(bytes: &[u8]) -> Option<SignatureInfo>

Returns Some(SignatureInfo) if the Instruction is a Bitcoin Schnorr Signature, otherwise None is returned.

Source

pub fn all_from(input: &TxIn) -> Result<Vec<SignatureInfo>, InputError>

Constructs a vector of SignatureInfo for all Signatures in the input. If the inputs script_sig and witness don’t contain any signatures, an empty vector is returned.

Trait Implementations§

Source§

impl Clone for SignatureInfo

Source§

fn clone(&self) -> SignatureInfo

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SignatureInfo

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for SignatureInfo

Source§

fn eq(&self, other: &SignatureInfo) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for SignatureInfo

Source§

impl StructuralPartialEq for SignatureInfo

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.