Module logic

Source

Re-exports§

pub use errors::HostError;
pub use errors::VMLogicError;
pub use gas_counter::with_ext_cost_counter;
pub use types::ReturnData;

Modules§

errors
gas_counter
mocks
test_utils
types

Structs§

Config
Dynamic configuration parameters required for the WASM runtime to execute a smart contract.
DataReceiver
The outgoing (egress) data which will be transformed to a DataReceipt to be sent to a receipt.receiver
LimitConfig
Describes limits for VM and Runtime. TODO #4139: consider switching to strongly-typed wrappers instead of raw quantities
MemSlice
Representation of the address slice of guest memory.
TrieNodesCount
Counts trie nodes reads during tx/receipt execution for proper storage costs charging.
VMContext
Context for the contract execution.
VMLogic
VMOutcome

Enums§

CompiledContract
ContractPrepareVersion
Our original code for limiting WASM stack was buggy. We fixed that, but we still have to use old (V0) limiter for old protocol versions.
StorageGetMode
This enum represents if a storage_get call will be performed through flat storage or trie

Traits§

CompiledContractCache
Cache for compiled modules
External
An external blockchain interface for the Runtime logic
MemoryLike
An abstraction over the memory of the smart contract.
ValuePtr
Logical pointer to a value in storage. Allows getting value length before getting the value itself. This is needed so that runtime can charge gas before accessing a potentially large value.

Type Aliases§

ProtocolVersion