package tezos-protocol-012-Psithaca

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

Install

Dune Dependency

Authors

Maintainers

Sources

tezos-16.1.tar.gz
sha256=43723d096307603703a1a89ed1b2eb202b365f5e7824b96b0cbf813b343a6cf7
sha512=b2a637f2e965000d3d49ad85277ca24d6cb07a1a7cf2bc69d296d8b03ad78c3eaa8e21e94b9162e62c2e11649cd03bc845b2a3dafe623b91065df69d47dc8e4f

doc/tezos-protocol-012-Psithaca.raw/Tezos_raw_protocol_012_Psithaca/Contract_repr/index.html

Module Tezos_raw_protocol_012_Psithaca.Contract_reprSource

This module defines identifiers for two basic types of contracts. It also specifies how to compute originated contract's hash from origination nonce.

A contract is simply an account on the blockchain ledger. There are two types of contracts:

  • implicit contracts represent accounts of users of the blockchain;
  • originated are special accounts with a Michelson script attached to them. Every time a transaction is sent to an originated account, its associated script is run in order to trigger some action in response.

An implicit account is identified by the hash of the public key which was used to create it. The owner of the corresponding private key is the holder of the account. An originated contract's hash is derived from its origination nonce (see below).

Sourcetype contract = t
include Tezos_protocol_environment_012_Psithaca.Compare.S with type t := contract
val (=) : contract -> contract -> bool
val (<>) : contract -> contract -> bool
val (<) : contract -> contract -> bool
val (<=) : contract -> contract -> bool
val (>=) : contract -> contract -> bool
val (>) : contract -> contract -> bool
val compare : contract -> contract -> int
val equal : contract -> contract -> bool
val max : contract -> contract -> contract
val min : contract -> contract -> contract
Sourceval public_key_hash_in_memory_size : Cache_memory_helpers.sint
Sourceval in_memory_size : t -> Cache_memory_helpers.sint

Implicit contracts

Originated contracts

Sourcetype origination_nonce

Originated contracts handles are crafted from the hash of the operation that triggered their origination (and nothing else). As a single operation can trigger several originations, the corresponding handles are forged from a deterministic sequence of nonces, initialized with the hash of the operation.

Sourceval originated_contract : origination_nonce -> contract
Sourceval originated_contracts : since:origination_nonce -> until:origination_nonce -> contract list
Sourceval incr_origination_nonce : origination_nonce -> origination_nonce
Sourceval is_originated : contract -> Contract_hash.t option

Human readable notation

Sourcetype Tezos_protocol_environment_012_Psithaca.Error_monad.error +=
  1. | Invalid_contract_notation of string
Sourceval to_b58check : contract -> string

Serializers

OCaml

Innovation. Community. Security.