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§
source§impl Clone for CellbaseError
impl Clone for CellbaseError
source§fn clone(&self) -> CellbaseError
fn clone(&self) -> CellbaseError
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for CellbaseError
impl Debug for CellbaseError
source§impl Display for CellbaseError
impl Display for CellbaseError
source§impl Error for CellbaseError
impl Error for CellbaseError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl From<CellbaseError> for BlockError
impl From<CellbaseError> for BlockError
source§fn from(error: CellbaseError) -> Self
fn from(error: CellbaseError) -> Self
source§impl From<CellbaseError> for Error
impl From<CellbaseError> for Error
source§fn from(error: CellbaseError) -> Self
fn from(error: CellbaseError) -> Self
source§impl PartialEq for CellbaseError
impl PartialEq for CellbaseError
source§fn eq(&self, other: &CellbaseError) -> bool
fn eq(&self, other: &CellbaseError) -> bool
self and other values to be equal, and is used
by ==.