Crate pallet_ovm[][src]

Expand description

Ovm Module

The Ovm module provides functionality for handling layer2 dispute logics. This refer to: https://github.com/cryptoeconomicslab/ovm-contracts/blob/master/contracts/UniversalAdjudicationContract.sol

Overview

Ovm module is the substrate pallet to archive dispute game defined by predicate logic.

Re-exports

pub use $crate::traits::GetPalletVersion as _;

Modules

Structs

Atomic Predicate AccountId List. It is inject when runtime setup.

ChallengeGame is a part of L2 dispute. It’s instantiated by claiming property. The client can get a game instance from this module.

Current cost schedule for contracts.

Mapping the game id to Challenge Game.

Genesis config for the module, allow to build genesis storage.

In-memory cache of configuration values.

A mapping between an original code hash and instrumented ovm(predicate) code, ready for execution.

A mapping from an original code hash to the original code, untouched by instrumentation.

PredicateContract wrapped Predicate and initial arguments.

Mapping the predicate address to Predicate. Predicate is handled similar to contracts.

Property stands for dispute logic and we can claim every Properties to Adjudicator Contract. Property has its predicate address and array of input.

Definition of the cost schedule and other parameterizations for optimistic virtual machine.

Enums

Dispatchable calls.

The game decision by predicates.

Error for the staking module.

Events for this module.

Traits

Type Definitions

RawEvent specialized for the configuration Config