[][src]Enum verification::Error

pub enum Error {
    Duplicate,
    DuplicatedTransactions,
    Empty,
    Pow,
    FuturisticTimestamp,
    Timestamp,
    Coinbase,
    Transaction(usizeTransactionError),
    Difficulty {
        expected: Compact,
        actual: Compact,
    },
    MerkleRoot,
    CoinbaseOverspend {
        expected_max: u64,
        actual: u64,
    },
    CoinbaseScript,
    MaximumSigops,
    MaximumSigopsCost,
    CoinbaseSignatureLength(usize),
    Size(usize),
    Weight,
    NonFinalBlock,
    OldVersionBlock,
    TransactionFeeAndRewardOverflow,
    TransactionFeesOverflow,
    ReferencedInputsSumOverflow,
    WitnessInvalidNonceSize,
    WitnessMerkleCommitmentMismatch,
    UnexpectedWitness,
    NonCanonicalTransactionOrdering,
    Database(DBError),
}

All possible verification errors

Variants

has an equal duplicate in the chain

Contains duplicated transactions

No transactions in block

Invalid proof-of-work (Block hash does not satisfy nBits)

Futuristic timestamp

Invalid timestamp

First transaction is not a coinbase transaction

One of the transactions is invalid (corresponding index and specific transaction error)

nBits do not match difficulty rules

Fields of Difficulty

Invalid merkle root

Coinbase spends too much

Fields of CoinbaseOverspend

Coinbase has invalid script sig prefix (BIP90 -> BIP34)

Maximum sigops operations exceeded - will not provide how much it was in total since it stops counting once MAX_BLOCK_SIGOPS is reached

Maximum sigops operations cost exceeded

Coinbase signature is not in the range 2-100

Block size is invalid

Block weight is invalid

Block transactions are not final.

Old version block.

Sum of the transaction fees in block + coinbase reward exceeds u64::max

Sum of the transaction fees in block exceeds u64::max

Sum of all referenced outputs in block transactions resulted in the overflow

SegWit: bad witess nonce size

SegWit: witness merkle mismatch

SegWit: unexpected witness

Non-canonical tranasctions ordering within block

Database error

Trait Implementations

impl Debug for Error
[src]

Formats the value using the given formatter. Read more

impl PartialEq for Error
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl From<DBError> for Error
[src]

Performs the conversion.

Auto Trait Implementations

impl Send for Error

impl Sync for Error

Blanket Implementations

impl<T> From for T
[src]

Performs the conversion.

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

Performs the conversion.

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

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

Important traits for &'a mut R

Immutably borrows from an owned value. Read more

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

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

Important traits for &'a mut R

Mutably borrows from an owned value. Read more

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

🔬 This is a nightly-only experimental API. (get_type_id)

this method will likely be replaced by an associated static

Gets the TypeId of self. Read more

impl<T> Erased for T