Enum near_primitives::types::StateChangeCause[][src]

pub enum StateChangeCause {
    NotWritableToDisk,
    InitialState,
    TransactionProcessing {
        tx_hash: CryptoHash,
    },
    ActionReceiptProcessingStarted {
        receipt_hash: CryptoHash,
    },
    ActionReceiptGasReward {
        receipt_hash: CryptoHash,
    },
    ReceiptProcessing {
        receipt_hash: CryptoHash,
    },
    PostponedReceipt {
        receipt_hash: CryptoHash,
    },
    UpdatedDelayedReceipts,
    ValidatorAccountsUpdate,
}

A structure used to index state changes due to transaction/receipt processing and other things.

Variants

NotWritableToDisk

A type of update that does not get finalized. Used for verification and execution of immutable smart contract methods. Attempt fo finalize a TrieUpdate containing such change will lead to panic.

InitialState

A type of update that is used to mark the initial storage update, e.g. during genesis or in tests setup.

TransactionProcessing

Processing of a transaction.

Fields of TransactionProcessing

tx_hash: CryptoHash
ActionReceiptProcessingStarted

Before the receipt is going to be processed, inputs get drained from the state, which causes state modification.

Fields of ActionReceiptProcessingStarted

receipt_hash: CryptoHash
ActionReceiptGasReward

Computation of gas reward.

Fields of ActionReceiptGasReward

receipt_hash: CryptoHash
ReceiptProcessing

Processing of a receipt.

Fields of ReceiptProcessing

receipt_hash: CryptoHash
PostponedReceipt

The given receipt was postponed. This is either a data receipt or an action receipt. A DataReceipt can be postponed if the corresponding ActionReceipt is not received yet, or other data dependencies are not satisfied. An ActionReceipt can be postponed if not all data dependencies are received.

Fields of PostponedReceipt

receipt_hash: CryptoHash
UpdatedDelayedReceipts

Updated delayed receipts queue in the state. We either processed previously delayed receipts or added more receipts to the delayed queue.

ValidatorAccountsUpdate

State change that happens when we update validator accounts. Not associated with with any specific transaction or receipt.

Trait Implementations

impl BorshDeserialize for StateChangeCause where
    CryptoHash: BorshDeserialize,
    CryptoHash: BorshDeserialize,
    CryptoHash: BorshDeserialize,
    CryptoHash: BorshDeserialize,
    CryptoHash: BorshDeserialize
[src]

impl BorshSerialize for StateChangeCause where
    CryptoHash: BorshSerialize,
    CryptoHash: BorshSerialize,
    CryptoHash: BorshSerialize,
    CryptoHash: BorshSerialize,
    CryptoHash: BorshSerialize
[src]

impl Clone for StateChangeCause[src]

impl Debug for StateChangeCause[src]

impl From<StateChangeCause> for StateChangeCauseView[src]

Auto Trait Implementations

Blanket Implementations

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

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

impl<T> BorrowMut<T> for T where
    T: ?Sized
[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, 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<V, T> VZip<V> for T where
    V: MultiLane<T>,