pub enum CellbaseError {
    InvalidInput,
    InvalidRewardAmount,
    InvalidRewardTarget,
    InvalidWitness,
    InvalidTypeScript,
    InvalidOutputQuantity,
    InvalidQuantity,
    InvalidPosition,
    InvalidOutputData,
}
Expand description

Errors due to the fact that the cellbase rule is not respected.

See more about cellbase transaction: cellbase transaction

Variants

InvalidInput

The cellbase input is unexpected. The structure reference of correct cellbase input: new_cellbase_input.

InvalidRewardAmount

The cellbase output capacity is not equal to the total block reward.

InvalidRewardTarget

The cellbase output lock does not match with the target lock.

As for 0 ~ PROPOSAL_WINDOW.farthest blocks, cellbase outputs should be empty; otherwise, lock of first cellbase output should match with the target block.

Assumes the current block number is i, then its target block is that: (1) on that same chain with current block; (2) number is i - PROPOSAL_WINDOW.farthest - 1.

InvalidWitness

The cellbase witness is not in CellbaseWitness format.

InvalidTypeScript

The cellbase type script is not none.

InvalidOutputQuantity

The length of cellbase outputs and outputs-data should be equal and less than 1.

InvalidQuantity

There are multiple cellbase transactions inside the same block.

InvalidPosition

The first block transaction is not a valid cellbase transaction.

See also is_cellbase.

InvalidOutputData

The cellbase output-data is not empty.

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

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.42.0:

use the Display impl or to_string()

👎 Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

Performs the conversion.

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

TODO(doc): @quake

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

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.