[][src]Crate pallet_ovm

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.

Modules

predicate
traits

Structs

AtomicPredicateIdConfig

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

ChallengeGame

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

Config

In-memory cache of configuration values.

CurrentSchedule

Current cost schedule for contracts.

Games

Mapping the game id to Challenge Game.

GenesisConfig

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

Module
PredicateCache

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

PredicateCodes

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

PredicateContract

PredicateContract wrapped Predicate and initial arguments.

Predicates

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

Property

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

Schedule

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

SimpleAddressDeterminer

Enums

Call

Dispatchable calls.

Decision

The game decision by predicates.

Error

Error for the staking module.

RawEvent

Events for this module.

Traits

Trait

Type Definitions

Event

RawEvent specialized for the configuration Trait

ExecResult
PropertyOf