pub enum BlockError {
Show 33 variants TooManyUncles(OutOfBounds<usize>), ExtraDataOutOfBounds(OutOfBounds<usize>), InvalidSealArity(Mismatch<usize>), TooMuchGasUsed(OutOfBounds<U256>), GasTargetTooBig(OutOfBounds<U256>), GasTargetTooSmall(OutOfBounds<U256>), InvalidUnclesHash(Mismatch<H256>), UncleTooOld(OutOfBounds<BlockNumber>), UncleIsBrother(OutOfBounds<BlockNumber>), UncleInChain(H256), DuplicateUncle(H256), UncleParentNotInChain(H256), InvalidStateRoot(Mismatch<H256>), InvalidGasUsed(Mismatch<U256>), InvalidTransactionsRoot(Mismatch<H256>), DifficultyOutOfBounds(OutOfBounds<U256>), InvalidDifficulty(Mismatch<U256>), MismatchedH256SealElement(Mismatch<H256>), InvalidProofOfWork(OutOfBounds<U256>), InvalidSeal, InvalidGasLimit(OutOfBounds<U256>), IncorrectBaseFee(Mismatch<U256>), InvalidReceiptsRoot(Mismatch<H256>), InvalidTimestamp(OutOfBounds<SystemTime>), TemporarilyInvalid(OutOfBounds<SystemTime>), InvalidLogBloom(Box<Mismatch<Bloom>>), InvalidNumber(Mismatch<BlockNumber>), RidiculousNumber(OutOfBounds<BlockNumber>), TimestampOverflow, TooManyTransactions(Address), UnknownParent(H256), UnknownUncleParent(H256), UnknownEpochTransition(u64),
}
Expand description

Errors concerning block processing.

Variants

TooManyUncles(OutOfBounds<usize>)

Block has too many uncles.

ExtraDataOutOfBounds(OutOfBounds<usize>)

Extra data is of an invalid length.

InvalidSealArity(Mismatch<usize>)

Seal is incorrect format.

TooMuchGasUsed(OutOfBounds<U256>)

Block has too much gas used.

GasTargetTooBig(OutOfBounds<U256>)

Gas target increased too much from previous block

GasTargetTooSmall(OutOfBounds<U256>)

Gas target decreased too much from previous block

InvalidUnclesHash(Mismatch<H256>)

Uncles hash in header is invalid.

UncleTooOld(OutOfBounds<BlockNumber>)

An uncle is from a generation too old.

UncleIsBrother(OutOfBounds<BlockNumber>)

An uncle is from the same generation as the block.

UncleInChain(H256)

An uncle is already in the chain.

DuplicateUncle(H256)

An uncle is included twice.

UncleParentNotInChain(H256)

An uncle has a parent not in the chain.

InvalidStateRoot(Mismatch<H256>)

State root header field is invalid.

InvalidGasUsed(Mismatch<U256>)

Gas used header field is invalid.

InvalidTransactionsRoot(Mismatch<H256>)

Transactions root header field is invalid.

DifficultyOutOfBounds(OutOfBounds<U256>)

Difficulty is out of range; this can be used as an looser error prior to getting a definitive value for difficulty. This error needs only provide bounds of which it is out.

InvalidDifficulty(Mismatch<U256>)

Difficulty header field is invalid; this is a strong error used after getting a definitive value for difficulty (which is provided).

MismatchedH256SealElement(Mismatch<H256>)

Seal element of type H256 (max_hash for Ethash, but could be something else for other seal engines) is out of bounds.

InvalidProofOfWork(OutOfBounds<U256>)

Proof-of-work aspect of seal, which we assume is a 256-bit value, is invalid.

InvalidSeal

Some low-level aspect of the seal is incorrect.

InvalidGasLimit(OutOfBounds<U256>)

Gas limit header field is invalid.

IncorrectBaseFee(Mismatch<U256>)

Base fee is incorrect; base fee is different from the expected calculated value.

InvalidReceiptsRoot(Mismatch<H256>)

Receipts trie root header field is invalid.

InvalidTimestamp(OutOfBounds<SystemTime>)

Timestamp header field is invalid.

TemporarilyInvalid(OutOfBounds<SystemTime>)

Timestamp header field is too far in future.

InvalidLogBloom(Box<Mismatch<Bloom>>)

Log bloom header field is invalid.

InvalidNumber(Mismatch<BlockNumber>)

Number field of header is invalid.

RidiculousNumber(OutOfBounds<BlockNumber>)

Block number isn’t sensible.

TimestampOverflow

Timestamp header overflowed

TooManyTransactions(Address)

Too many transactions from a particular address.

UnknownParent(H256)

Parent given is unknown.

UnknownUncleParent(H256)

Uncle parent given is unknown.

UnknownEpochTransition(u64)

No transition to epoch number.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Formats the value using the given formatter. Read more

👎 Deprecated since 1.42.0:

use the Display impl or to_string()

The lower-level source of this error, if any. Read more

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

Returns a stack backtrace, if available, of where this error occurred. Read more

👎 Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

Error concerning block processing.

Performs the conversion.

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

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Compare self to key and return true if they are equal.

Returns the argument unchanged.

Calls U::from(self).

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

Should always be Self

The resulting type after obtaining ownership.

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

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

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

Converts the given value to a String. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.