package tezos-protocol-015-PtLimaPt

  1. Overview
  2. Docs
Tezos/Protocol: economic-protocol definition

Install

Dune Dependency

Authors

Maintainers

Sources

tezos-16.0.tar.gz
sha256=ad9e08819871c75ba6f4530b125f7d157799398e4d77a1e6bfea9d91ff37ff55
sha512=c5dc4d40cc09bc6980fbbdb5c2e105bf4252cf9cfcb2b49660b0ebe4dc789f6709ec3b3bf2f87d81580d3eed9521eeb1c960f24d9b14eb0285aaba1f84d10a9b

doc/tezos-protocol-015-PtLimaPt.raw/Tezos_raw_protocol_015_PtLimaPt/Sc_rollups/index.html

Module Tezos_raw_protocol_015_PtLimaPt.Sc_rollupsSource

Here is the list of PVMs available in this protocol.

Sourcemodule PVM : sig ... end
Sourcemodule Kind : sig ... end

A smart contract rollup has a kind, which assigns meaning to rollup operations.

Sourcemodule type PVM_with_proof = sig ... end

A module signature we can use to form first-class modules that carry a specific proof a long with the PVM module interface.

Sourcetype wrapped_proof =
  1. | Unencodable of (module PVM_with_proof)
  2. | Arith_pvm_with_proof of (module PVM_with_proof with type proof = Sc_rollup_arith.Protocol_implementation.proof)
  3. | Wasm_2_0_0_pvm_with_proof of (module PVM_with_proof with type proof = Sc_rollup_wasm.V2_0_0.Protocol_implementation.proof)

A wrapper for first-class modules (module PVM_with_proof). We need this in order to implement an encoding function. The Unencodable case is provided so that tests can provide their own PVM interfaces without having to include proof encodings here.

Sourceval wrapped_proof_module : wrapped_proof -> (module PVM_with_proof)

Unwrap a wrapped_proof into a first-class module.

Sourceval wrapped_proof_kind_exn : wrapped_proof -> Kind.t

wrapped_proof_kind_exn p returns the kind of the PVM capable of interpreting p. Raises Invalid_argument iff p is an Unencodable proof (which cannot happen if p is constructed by wrapped_proof_encoding).

Sourceval wrap_proof : (module PVM_with_proof) -> wrapped_proof option

Wrap a PVM module with proof into a wrapped_proof. This matches on the name in the module---if that is recognisable as a Kind, this function will encode and decode to coerce the proof to a proof in the protocol implementation of the PVM. If the name is not recognised this will fall back to using Unencodable, so the value can still be used in tests but won't work as part of a Sc_rollup_refute operation.

OCaml

Innovation. Community. Security.