[][src]Enum ckb_verification::TransactionError

pub enum TransactionError {
    InsufficientCellCapacity {
        source: TransactionErrorSource,
        index: usize,
        occupied_capacity: Capacity,
        capacity: Capacity,
    },
    OutputsSumOverflow {
        inputs_sum: Capacity,
        outputs_sum: Capacity,
    },
    Empty {
        source: TransactionErrorSource,
    },
    DuplicateCellDeps {
        out_point: OutPoint,
    },
    DuplicateHeaderDeps {
        hash: Byte32,
    },
    OutputsDataLengthMismatch {
        outputs_len: usize,
        outputs_data_len: usize,
    },
    InvalidSince {
        index: usize,
    },
    Immature {
        index: usize,
    },
    CellbaseImmaturity {
        source: TransactionErrorSource,
        index: usize,
    },
    MismatchedVersion {
        expected: Version,
        actual: Version,
    },
    ExceededMaximumBlockBytes {
        limit: u64,
        actual: u64,
    },
}

Variants

InsufficientCellCapacity

output.occupied_capacity() > output.capacity()

Fields of InsufficientCellCapacity

source: TransactionErrorSourceindex: usizeoccupied_capacity: Capacitycapacity: Capacity
OutputsSumOverflow

SUM([o.capacity for o in outputs]) > SUM([i.capacity for i in inputs])

Fields of OutputsSumOverflow

inputs_sum: Capacityoutputs_sum: Capacity
Empty

inputs.is_empty() || outputs.is_empty()

Fields of Empty

source: TransactionErrorSource
DuplicateCellDeps

Duplicated dep-out-points within the same transaction

Fields of DuplicateCellDeps

out_point: OutPoint
DuplicateHeaderDeps

Duplicated headers deps without within the same transaction

Fields of DuplicateHeaderDeps

hash: Byte32
OutputsDataLengthMismatch

outputs.len() != outputs_data.len()

Fields of OutputsDataLengthMismatch

outputs_len: usizeoutputs_data_len: usize
InvalidSince

The format of transaction.since is invalid

Fields of InvalidSince

index: usize
Immature

The transaction is not mature which is required by transaction.since

Fields of Immature

index: usize
CellbaseImmaturity

The transaction is not mature which is required by cellbase maturity rule

Fields of CellbaseImmaturity

source: TransactionErrorSourceindex: usize
MismatchedVersion

The transaction version is mismatched with the system can hold

Fields of MismatchedVersion

expected: Versionactual: Version
ExceededMaximumBlockBytes

The transaction size is too large

Fields of ExceededMaximumBlockBytes

limit: u64actual: u64

Implementations

impl TransactionError[src]

pub fn is_malformed_tx(&self) -> bool[src]

Trait Implementations

impl Clone for TransactionError[src]

impl Debug for TransactionError[src]

impl Display for TransactionError[src]

impl Eq for TransactionError[src]

impl Fail for TransactionError[src]

impl From<TransactionError> for Error[src]

impl PartialEq<TransactionError> for TransactionError[src]

impl StructuralEq for TransactionError[src]

impl StructuralPartialEq for TransactionError[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> AsAny for T where
    T: Any
[src]

impl<T> AsFail for T where
    T: Fail
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> Erased for T

impl<E> Fail for E where
    E: 'static + Error + Send + Sync
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Err = <U as TryFrom<T>>::Err

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,