Enum ckb_verification::CellbaseError
source · [−]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
Performs the conversion.
Performs the conversion.
Auto Trait Implementations
impl RefUnwindSafe for CellbaseError
impl Send for CellbaseError
impl Sync for CellbaseError
impl Unpin for CellbaseError
impl UnwindSafe for CellbaseError
Blanket Implementations
Mutably borrows from an owned value. Read more