[][src]Enum bitcoin::util::psbt::Error

pub enum Error {
    InvalidMagic,
    InvalidSeparator,
    InvalidKey(Key),
    InvalidProprietaryKey,
    DuplicateKey(Key),
    UnsignedTxHasScriptSigs,
    UnsignedTxHasScriptWitnesses,
    MustHaveUnsignedTx,
    NoMorePairs,
    UnexpectedUnsignedTx {
        expected: Transaction,
        actual: Transaction,
    },
    NonStandardSigHashType(u32),
    HashParseError(Error),
    InvalidPreimageHashPair {
        hash_type: PsbtHash,
        preimage: Vec<u8>,
        hash: Vec<u8>,
    },
    MergeConflict(String),
    ConsensusEncoding,
}

Ways that a Partially Signed Transaction might fail.

Variants

InvalidMagic

Magic bytes for a PSBT must be the ASCII for "psbt" serialized in most significant byte order.

InvalidSeparator

The separator for a PSBT must be 0xff.

InvalidKey(Key)

Known keys must be according to spec.

InvalidProprietaryKey

Non-proprietary key type found when proprietary key was expected

DuplicateKey(Key)

Keys within key-value map should never be duplicated.

UnsignedTxHasScriptSigs

The scriptSigs for the unsigned transaction must be empty.

UnsignedTxHasScriptWitnesses

The scriptWitnesses for the unsigned transaction must be empty.

MustHaveUnsignedTx

A PSBT must have an unsigned transaction.

NoMorePairs

Signals that there are no more key-value pairs in a key-value map.

UnexpectedUnsignedTx

Attempting to merge with a PSBT describing a different unsigned transaction.

Fields of UnexpectedUnsignedTx

expected: Transaction

Expected

actual: Transaction

Actual

NonStandardSigHashType(u32)

Unable to parse as a standard SigHash type.

HashParseError(Error)

Parsing errors from bitcoin_hashes

InvalidPreimageHashPair

The pre-image must hash to the correponding psbt hash

Fields of InvalidPreimageHashPair

hash_type: PsbtHash

Hash-type

preimage: Vec<u8>

Pre-image

hash: Vec<u8>

Hash value

MergeConflict(String)

Data inconsistency/conflicting data during merge procedure

ConsensusEncoding

Serialization error in bitcoin consensus-encoded structures

Trait Implementations

impl Clone for Error[src]

impl Debug for Error[src]

impl Display for Error[src]

impl Eq for Error[src]

impl Error for Error[src]

impl From<Error> for Error[src]

impl PartialEq<Error> for Error[src]

impl StructuralEq for Error[src]

impl StructuralPartialEq for Error[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.