# Functions
NewErrInvalidTransactionsInNewBlock Creates a new ErrInvalidTransactionsInNewBlock error wrapped in a RuleError.
NewErrMissingParents creates a new ErrMissingParents error wrapped in a RuleError.
NewErrMissingTxOut Creates a new ErrMissingTxOut error wrapped in a RuleError.
# Variables
DaaScoreNil indicates that the DAA Score is zero or negative.
ErrBadCoinbasePayloadLen indicates the length of the payload for a coinbase transaction is too high.
ErrBadCoinbaseTransaction indicates that the block's coinbase transaction is not build as expected.
ErrBadMerkleRoot indicates the calculated merkle root does not match the expected value.
These constants are used to identify a specific RuleError.
ErrBadTxOutValue indicates an output value for a transaction is invalid in some way such as being out of range.
ErrBadUTXOCommitment indicates the calculated UTXO commitment does not match the expected value.
ErrBlockMassTooHigh indicates the mass of a block exceeds the maximum allowed limits.
ErrBlockVersionIsUnknown indicates that the block version is unknown.
ErrBlockVersionTooOld indicates the block version is too old and is no longer accepted since the majority of the network has upgraded to a newer version.
ErrChainedTransactions indicates that a block contains a transaction that spends an output of a transaction In the same block.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
ErrDevFeeNotIncluded indicates that the transactions do not include dev fee.
ErrDoubleSpendInSameBlock indicates a transaction that spends an output that was already spent by another transaction in the same block.
ErrDuplicateBlock indicates a block with the same hash already exists.
ErrDuplicateTx indicates a block contains an identical transaction (or at least two transactions which hash to the same value).
ErrDuplicateTxInputs indicates a transaction references the same input more than once.
ErrFinalityPointTimeTooOld indicates a block has a timestamp before the last finality point.
ErrFirstTxNotCoinbase indicates the first transaction in a block is not a coinbase transaction.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
ErrImmatureSpend indicates a transaction is attempting to spend a coinbase that has not yet reached the required maturity.
ErrInvalidAncestorBlock indicates that an ancestor of this block has already failed validation.
ErrInvalidGas transaction wants to use more GAS than allowed by subnetwork.
ErrInvalidParentsRelation indicates that one of the parents of a block is also an ancestor of another parent.
ErrInvalidPayload transaction includes a payload in a subnetwork that doesn't allow a Payload.
ErrInvalidPoW indicates that the block proof-of-work is invalid.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
ErrMultipleCoinbases indicates a block contains more than one coinbase transaction.
ErrUnexpectedDifficulty indicates specified bits do not align with the expected value either because it is negative.
ErrNoParents indicates that the block is missing parents.
ErrNoTransactions indicates the block does not have a least one transaction.
ErrNoTxInputs indicates a transaction does not have any inputs.
ErrPrunedBlock indicates that the block currently being validated had already been pruned.
These constants are used to identify a specific RuleError.
ErrPruningPointViolation indicates that the pruning point isn't in the block past.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
ErrScriptMalformed indicates a transaction script is malformed in some way.
ErrScriptValidation indicates the result of executing transaction script failed.
ErrSpendTooHigh indicates a transaction is attempting to spend more value than the sum of all of its inputs.
ErrSubnetwork indicates that a block doesn't adhere to the subnetwork registry rules.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
ErrTargetTooHigh indicates specified bits do not align with the expected value either because it is above the valid range.
ErrTimeTooMuchInTheFuture indicates that the block timestamp is too much in the future.
ErrTimeTooOld indicates the time is either before the median time of the last several blocks per the DAG consensus rules.
ErrTooManyParents indicates that a block points to more then `MaxNumParentBlocks` parents.
ErrTransactionsNotSorted indicates that transactions in block are not sorted by subnetwork.
ErrTransactionVersionIsUnknown indicates that the transaction version is unknown.
These constants are used to identify a specific RuleError.
ErrUnexpectedBlueWork indicates specified blue work does not align with the expected value.
ErrUnexpectedCoinbaseBlueScore indicates specified blue score in the coinbase does not align with the expected value.
ErrUnexpectedDAAScore indicates specified DAA score does not align with the expected value.
ErrUnexpectedDifficulty indicates specified bits do not align with the expected value either because it doesn't match the calculated valued based on difficulty regarted rules.
ErrUnexpectedFinalityPoint indicates specified finality point does not align with the expected value.
ErrUnexpectedHeaderBlueScore indicates specified blue score in the header does not align with the expected value.
ErrUnexpectedFinalityPoint indicates a block header pruning point does not align with the expected value.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
ErrUnfinalizedTx indicates a transaction has not been finalized.
ErrViolatingBoundedMergeDepth indicates that a block is violating finality from its own point of view.
ErrViolatingMergeLimit indicates that a block merges more than mergeLimit blocks.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
These constants are used to identify a specific RuleError.
ErrWrongSigOpCount transaction input specifies an incorrect SigOpCount.
PowScoresEmpty indicates that there are no hard fork DAA Scores defined.
# Structs
ErrInvalidTransactionsInNewBlock indicates that some transactions in a new block are invalid.
ErrMissingParents indicates a block points to unknown parent(s).
ErrMissingTxOut indicates a transaction output referenced by an input either does not exist or has already been spent.
InvalidTransaction is a struct containing an invalid transaction, and the error explaining why it's invalid.
RuleError identifies a rule violation.