package tezos-protocol-005-PsBabyM1
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=43723d096307603703a1a89ed1b2eb202b365f5e7824b96b0cbf813b343a6cf7
sha512=b2a637f2e965000d3d49ad85277ca24d6cb07a1a7cf2bc69d296d8b03ad78c3eaa8e21e94b9162e62c2e11649cd03bc845b2a3dafe623b91065df69d47dc8e4f
doc/tezos-protocol-005-PsBabyM1.raw/Tezos_raw_protocol_005_PsBabyM1/Raw_context/index.html
Module Tezos_raw_protocol_005_PsBabyM1.Raw_context
Source
Errors
An internal storage error that should not happen
type Tezos_protocol_environment_005_PsBabyM1.Error_monad.error +=
| Storage_error of storage_error
type Tezos_protocol_environment_005_PsBabyM1.Error_monad.error +=
| Failed_to_parse_parameter of Tezos_protocol_environment_005_PsBabyM1.MBytes.t
type Tezos_protocol_environment_005_PsBabyM1.Error_monad.error +=
| Failed_to_decode_parameter of Tezos_protocol_environment_005_PsBabyM1.Data_encoding.json * string
Abstract Context
Abstract view of the context. Includes a handle to the functional key-value database (Context.t
) along with some in-memory values (gas, etc.).
val prepare :
level:Tezos_protocol_environment_005_PsBabyM1.Int32.t ->
predecessor_timestamp:Tezos_protocol_environment_005_PsBabyM1.Time.t ->
timestamp:Tezos_protocol_environment_005_PsBabyM1.Time.t ->
fitness:Tezos_protocol_environment_005_PsBabyM1.Fitness.t ->
Tezos_protocol_environment_005_PsBabyM1.Context.t ->
context Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Retrieves the state of the database and gives its abstract view. It also returns wether this is the first block validated with this version of the protocol.
val prepare_first_block :
level:int32 ->
timestamp:Tezos_protocol_environment_005_PsBabyM1.Time.t ->
fitness:Tezos_protocol_environment_005_PsBabyM1.Fitness.t ->
Tezos_protocol_environment_005_PsBabyM1.Context.t ->
(previous_protocol * context)
Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Returns the state of the database resulting of operations on its abstract view
val patch_constants :
context ->
(Constants_repr.parametric -> Constants_repr.parametric) ->
context Tezos_protocol_environment_005_PsBabyM1.Lwt.t
val add_fees :
context ->
Tez_repr.t ->
context Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Increment the current block fee stash that will be credited to baker's frozen_fees account at finalize_application
val add_rewards :
context ->
Tez_repr.t ->
context Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Increment the current block reward stash that will be credited to baker's frozen_fees account at finalize_application
val add_deposit :
context ->
Tezos_protocol_environment_005_PsBabyM1.Signature.Public_key_hash.t ->
Tez_repr.t ->
context Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Increment the current block deposit stash for a specific delegate. All the delegates' frozen_deposit accounts are credited at finalize_application
val get_deposits :
context ->
Tez_repr.t
Tezos_protocol_environment_005_PsBabyM1.Signature.Public_key_hash.Map.t
val check_gas_limit :
t ->
Tezos_protocol_environment_005_PsBabyM1.Z.t ->
unit Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
val init_origination_nonce :
t ->
Tezos_protocol_environment_005_PsBabyM1.Operation_hash.t ->
t
val origination_nonce :
t ->
Contract_repr.origination_nonce
Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
val increment_origination_nonce :
t ->
(t * Contract_repr.origination_nonce)
Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Generic accessors
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.
include T with type t := t and type context := context
Tells if the key is already defined as a value.
Tells if the key is already defined as a directory.
val get :
context ->
key ->
value Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Retrieve the value from the storage bucket ; returns a Storage_errorMissing_key
if the key is not set.
Retrieves the value from the storage bucket ; returns None
if the data is not initialized.
val init :
context ->
key ->
value ->
context Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Allocates the storage bucket and initializes it ; returns a Storage_errorExisting_key
if the bucket exists.
val set :
context ->
key ->
value ->
context Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Updates the content of the bucket ; returns a Storage_error
Missing_key
if the value does not exists.
val init_set :
context ->
key ->
value ->
context Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Allocates the data and initializes it with a value ; just updates it if the bucket exists.
val set_option :
context ->
key ->
value option ->
context Tezos_protocol_environment_005_PsBabyM1.Lwt.t
When the value is Some v
, allocates the data and initializes it with v
; just updates it if the bucket exists. When the valus is None
, delete the storage bucket when the value ; does nothing if the bucket does not exists.
val delete :
context ->
key ->
context Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Delete the storage bucket ; returns a Storage_error
Missing_key
if the bucket does not exists.
Removes the storage bucket and its contents ; does nothing if the bucket does not exists.
Recursively removes all the storage buckets and contents ; does nothing if no bucket exists.
val copy :
context ->
from:key ->
to_:key ->
context Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Tezos_protocol_environment_005_PsBabyM1.Lwt.t
val fold :
context ->
key ->
init:'a ->
f:
([ `Key of key | `Dir of key ] ->
'a ->
'a Tezos_protocol_environment_005_PsBabyM1.Lwt.t) ->
'a Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Iterator on all the items of a given directory.
Recursively list all subkeys of a given key.
val fold_keys :
context ->
key ->
init:'a ->
f:(key -> 'a -> 'a Tezos_protocol_environment_005_PsBabyM1.Lwt.t) ->
'a Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Recursive iterator on all the subkeys of a given key.
Internally used in Storage_functors
to escape from a view.
Internally used in Storage_functors
to retrieve a full key from partial key relative a view.
val consume_gas :
context ->
Gas_limit_repr.cost ->
context Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Internally used in Storage_functors
to consume gas from within a view.
val check_enough_gas :
context ->
Gas_limit_repr.cost ->
unit Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Check if consume_gas will fail
Initialize the local nonce used for preventing a script to duplicate an internal operation to replay it.
val fresh_internal_nonce :
context ->
(context * int) Tezos_protocol_environment_005_PsBabyM1.Error_monad.tzresult
Increments the internal operation nonce.
Mark an internal operation nonce as taken.
Check is the internal operation nonce has been taken.
val allowed_endorsements :
context ->
(Tezos_protocol_environment_005_PsBabyM1.Signature.Public_key.t
* int list
* bool)
Tezos_protocol_environment_005_PsBabyM1.Signature.Public_key_hash.Map.t
Returns a map where to each endorser's pkh is associated the list of its endorsing slots (in decreasing order) for a given level.
Keep track of the number of endorsements that are included in a block
val init_endorsements :
context ->
(Tezos_protocol_environment_005_PsBabyM1.Signature.Public_key.t
* int list
* bool)
Tezos_protocol_environment_005_PsBabyM1.Signature.Public_key_hash.Map.t ->
context
Initializes the map of allowed endorsements, this function must only be called once.
val record_endorsement :
context ->
Tezos_protocol_environment_005_PsBabyM1.Signature.Public_key_hash.t ->
context
Marks an endorsment in the map as used.
val fresh_temporary_big_map :
context ->
context * Tezos_protocol_environment_005_PsBabyM1.Z.t
Provide a fresh identifier for a temporary big map (negative index).
Reset the temporary big_map identifier generator to -1
.
val temporary_big_maps :
context ->
('a ->
Tezos_protocol_environment_005_PsBabyM1.Z.t ->
'a Tezos_protocol_environment_005_PsBabyM1.Lwt.t) ->
'a ->
'a Tezos_protocol_environment_005_PsBabyM1.Lwt.t
Iterate over all created temporary big maps since the last reset_temporary_big_map
.