package tezos-protocol-012-Psithaca
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=ddfb5076eeb0b32ac21c1eed44e8fc86a6743ef18ab23fff02d36e365bb73d61
sha512=d22a827df5146e0aa274df48bc2150b098177ff7e5eab52c6109e867eb0a1f0ec63e6bfbb0e3645a6c2112de3877c91a17df32ccbff301891ce4ba630c997a65
doc/tezos_raw_protocol_012_Psithaca/Tezos_raw_protocol_012_Psithaca/index.html
Module Tezos_raw_protocol_012_Psithaca
Source
An Alpha_context.t
is an immutable snapshot of the ledger state at some block height, preserving type-safety and invariants of the ledger state.
This declares Protocol RPC services.
Only delegates with at least one roll take part in the amendment procedure. It works as follows:
This module supports advancing the ledger state by applying operation
s.
Types representing results of applying an operation.
This module handles hashes of implicit contract addresses used for commitments in the origin block.
Representation of block headers.
A specialized Blake2B implementation for hashing block's payloads.
Value on which validators try to reach a consensus.
Frequently used data should be kept in memory and persisted along a chain of blocks. The caching mechanism allows the economic protocol to declare such data and to rely on a Least Recently Used strategy to keep the cache size under a fixed limit.
A specialized Blake2B implementation for hashing contract identifiers.
This module defines identifiers for two basic types of contracts. It also specifies how to compute originated contract's hash from origination nonce.
This module defines a standard signature for modules providing fixed-point arithmetic.
Internal representation of the gas limit available to the node baking a new block. It should be proportional to the time and energy required to perform a computation.
Costs function for the global table of constants.
This module represents access to a global table of constant Micheline values. Users may register a Micheline value in the table, paying the cost of storage. Once stored, contracts source code may reference this value by its hash.
Functions to setup storage. Used by Alpha_context.prepare
.
See Lazy_storage_kind
for an introduction on lazy storage.
Lazy_storage offers a unified interface for specific Michelson datatype that behave somewhat lazily, because they are intended to be quite big. Instead of serializing/deserializing the whole value to/from the storage, only an identifier is used. The identifier acts like a pointer. When using the value in a Michelson script, some part of it may be read from the storage, and a lightweight diff is computed. The diff is effectively applied to the storage at the end of the execution.
This module defines the protocol representation of a level. Besides the "raw level", which is the shell's notion of the level, this representation also contains additional information, like the cycle the level belongs to.
A specialized Blake2B implementation for hashing nonces.
Tezos Protocol Implementation - Low level Repr. of Operations
This module defines protocol parameters, i.e. constants regulating the behaviour of the blockchain under the protocol.
All context manipulation functions. This signature is included as-is for direct context accesses, and used in Storage_functors
to provide restricted views to the context.
Basic roll manipulation.
A round represents an iteration of the single-shot consensus algorithm.
Efficient sampling from given finitely supported (nonzero, positive) measures using the alias method. Measures need not be normalized on input, but sampling proceeds from the normalized probability measure associated to the given measure.
This module provides saturated arithmetic between 0 and 2^62 - 1.
This module manages the cache for smart contracts.
A specialized Blake2B implementation for hashing Michelson expressions.
This is the Michelson interpreter.
Defines a Michelson expression representation as a Micheline node with canonical (int
) location and Michelson_v1_primitives.prim
as content.
Strings of printable characters
Defines the internal Michelson representation for timestamps and basic operations that can be performed on it.
This module provides overapproximation of memory footprint for Michelson-related values.
Functions for RPC service registration, using Updater.rpc_context
and RPC_service.t
from the Protocol Environment.
A specialized Blake2B implementation for hashing internal states of random number generators.
This module is responsible for building the description of the current state of the storage, which is then used to build specification of the RPC endpoints for accessing the storage. It produces resto
RPC_directory.t
values, which can be used directly to construct the RPC endpoint tree.
Tezos Protocol Implementation - Typed storage builders.
This module exposes a function for generating a ticket-balance key-hash and an amount, given an owner and a ticket. The key-hash and the amount is used for populating the global ticket-balance table that tracks ownership of different types of tickets.
This module contains constants and utility functions for gas metering functions used for extracting and handling tickets for the global ticket balance table.
This module provides an API for extracting tickets of arbitrary types from an OCaml values, given a type-witness.
The aim of this module is to manage operations involving tokens such as minting, transferring, and burning. Every constructor of the types source
, container
, or sink
represents a kind of account that holds a given (or possibly infinite) amount of tokens.
Manages all the voting related storage in Storage.Vote.