pub enum RuleError {
Show 41 variants
WrongBlockVersion(u16),
TimeTooFarIntoTheFuture(u64, u64),
NoParents,
TooManyParents(usize, usize),
OriginParent,
InvalidParentsRelation(Hash, Hash),
InvalidParent(Hash),
MissingParents(Vec<Hash>),
PruningViolation(Hash),
UnexpectedHeaderDaaScore(u64, u64),
UnexpectedHeaderBlueScore(u64, u64),
UnexpectedHeaderBlueWork(BlueWorkType, BlueWorkType),
UnexpectedDifficulty(u32, u32),
TimeTooOld(u64, u64),
KnownInvalid,
MergeSetTooBig(u64, u64),
ViolatingBoundedMergeDepth,
BadMerkleRoot(Hash, Hash),
NoTransactions,
FirstTxNotCoinbase,
MultipleCoinbases(usize),
BadCoinbasePayload(CoinbaseError),
BadCoinbasePayloadBlueScore(u64, u64),
TxInIsolationValidationFailed(TransactionId, TxRuleError),
ExceedsMassLimit(u64),
MassFieldTooLow(TransactionId, u64, u64),
DoubleSpendInSameBlock(TransactionOutpoint),
ChainedTransaction(TransactionOutpoint),
TxInContextFailed(TransactionId, TxRuleError),
WrongSubsidy(u64, u64),
DuplicateTransactions(TransactionId),
InvalidPoW,
WrongHeaderPruningPoint(Hash, Hash),
UnexpectedIndirectParents(TwoDimVecDisplay<Hash>, TwoDimVecDisplay<Hash>),
BadUTXOCommitment(Hash, Hash, Hash),
BadAcceptedIDMerkleRoot(Hash, Hash, Hash),
BadCoinbaseTransaction,
InvalidTransactionsInUtxoContext(usize, usize),
InvalidTransactionsInNewBlock(HashMap<TransactionId, TxRuleError>),
InsufficientDaaWindowSize(usize),
PrunedBlock,
}Variants§
WrongBlockVersion(u16)
TimeTooFarIntoTheFuture(u64, u64)
NoParents
TooManyParents(usize, usize)
OriginParent
InvalidParentsRelation(Hash, Hash)
InvalidParent(Hash)
MissingParents(Vec<Hash>)
PruningViolation(Hash)
UnexpectedHeaderDaaScore(u64, u64)
UnexpectedHeaderBlueScore(u64, u64)
UnexpectedHeaderBlueWork(BlueWorkType, BlueWorkType)
UnexpectedDifficulty(u32, u32)
TimeTooOld(u64, u64)
KnownInvalid
MergeSetTooBig(u64, u64)
ViolatingBoundedMergeDepth
BadMerkleRoot(Hash, Hash)
NoTransactions
FirstTxNotCoinbase
MultipleCoinbases(usize)
BadCoinbasePayload(CoinbaseError)
BadCoinbasePayloadBlueScore(u64, u64)
TxInIsolationValidationFailed(TransactionId, TxRuleError)
ExceedsMassLimit(u64)
MassFieldTooLow(TransactionId, u64, u64)
DoubleSpendInSameBlock(TransactionOutpoint)
ChainedTransaction(TransactionOutpoint)
TxInContextFailed(TransactionId, TxRuleError)
WrongSubsidy(u64, u64)
DuplicateTransactions(TransactionId)
InvalidPoW
WrongHeaderPruningPoint(Hash, Hash)
UnexpectedIndirectParents(TwoDimVecDisplay<Hash>, TwoDimVecDisplay<Hash>)
BadUTXOCommitment(Hash, Hash, Hash)
BadAcceptedIDMerkleRoot(Hash, Hash, Hash)
BadCoinbaseTransaction
InvalidTransactionsInUtxoContext(usize, usize)
InvalidTransactionsInNewBlock(HashMap<TransactionId, TxRuleError>)
InsufficientDaaWindowSize(usize)
PrunedBlock
Currently this error is never created because it is impossible to submit such a block
Trait Implementations§
Source§impl Error for RuleError
impl Error for RuleError
1.30.0§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for RuleError
impl RefUnwindSafe for RuleError
impl Send for RuleError
impl Sync for RuleError
impl Unpin for RuleError
impl UnwindSafe for RuleError
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more