pub enum BlockErrorKind {
Show 20 variants ProposalTransactionDuplicate, CommitTransactionDuplicate, ProposalTransactionsHash, TransactionsRoot, InvalidDAO, BlockTransactions, UnknownParent, Uncles, Cellbase, Commit, ExceededMaximumProposalsLimit, ExceededMaximumCycles, ExceededMaximumBlockBytes, EmptyBlockExtension, ExceededMaximumBlockExtensionBytes, NoBlockExtension, InvalidBlockExtension, UnknownFields, InvalidExtraHash, InvalidChainRoot,
}
Expand description

A list specifying categories of ckb block error.

This list is intended to grow over time and it is not recommended to exhaustively match against it.

It is used with the BlockError.

Variants§

§

ProposalTransactionDuplicate

There are duplicated proposal transactions.

§

CommitTransactionDuplicate

There are duplicate committed transactions.

§

ProposalTransactionsHash

The calculated Merkle tree hash of proposed transactions does not match the one in the header.

§

TransactionsRoot

The calculated Merkle tree hash of committed transactions does not match the one in the header.

§

InvalidDAO

The calculated dao field does not match with the one in the header.

§

BlockTransactions

It indicates that the underlying error is BlockTransactionsError.

§

UnknownParent

It indicates that the underlying error is UnknownParentError.

§

Uncles

It indicates that the underlying error is UnclesError.

§

Cellbase

It indicates that the underlying error is CellbaseError.

§

Commit

It indicates that the underlying error is CommitError.

§

ExceededMaximumProposalsLimit

The number of block proposals exceeds limit.

§

ExceededMaximumCycles

Total cycles of the block transactions exceed limit.

§

ExceededMaximumBlockBytes

Total bytes of block exceeds limit.

§

EmptyBlockExtension

Empty block extension.

§

ExceededMaximumBlockExtensionBytes

Total bytes of block extension exceeds limit.

§

NoBlockExtension

No block extension.

The block extension should be existed after light client supported.

§

InvalidBlockExtension

The data length of block extension mismatches.

§

UnknownFields

The block has unknown field.

§

InvalidExtraHash

The calculated extra-hash does not match with the one in the header.

§

InvalidChainRoot

The calculated hash of chain root does not match with the one in the header.

Implementations§

Creates BlockError base on BlockErrorKind with an error as the reason.

Creates BlockError base on BlockErrorKind with a simple string as the reason.

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
Converts to this type from the input type.
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used by ==.
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
TODO(doc): @quake
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
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.