Tezos_raw_protocol_006_PsCARTHA.Raw_contexttype Tezos_protocol_environment_006_PsCARTHA.Error_monad.error += | Failed_to_parse_parameter of Tezos_protocol_environment_006_PsCARTHA.MBytes.ttype Tezos_protocol_environment_006_PsCARTHA.Error_monad.error += | Failed_to_decode_parameter of Tezos_protocol_environment_006_PsCARTHA.Data_encoding.json
* stringAbstract view of the context. Includes a handle to the functional key-value database (Context.t) along with some in-memory values (gas, etc.).
type context = ttype root_context = tval prepare :
level:Tezos_protocol_environment_006_PsCARTHA.Int32.t ->
predecessor_timestamp:Tezos_protocol_environment_006_PsCARTHA.Time.t ->
timestamp:Tezos_protocol_environment_006_PsCARTHA.Time.t ->
fitness:Tezos_protocol_environment_006_PsCARTHA.Fitness.t ->
Tezos_protocol_environment_006_PsCARTHA.Context.t ->
context Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.tRetrieves 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_006_PsCARTHA.Time.t ->
fitness:Tezos_protocol_environment_006_PsCARTHA.Fitness.t ->
Tezos_protocol_environment_006_PsCARTHA.Context.t ->
(previous_protocol * context)
Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.tval recover : context -> Tezos_protocol_environment_006_PsCARTHA.Context.tReturns the state of the database resulting of operations on its abstract view
val current_level : context -> Level_repr.tval predecessor_timestamp :
context ->
Tezos_protocol_environment_006_PsCARTHA.Time.tval current_timestamp :
context ->
Tezos_protocol_environment_006_PsCARTHA.Time.tval current_fitness :
context ->
Tezos_protocol_environment_006_PsCARTHA.Int64.tval set_current_fitness :
context ->
Tezos_protocol_environment_006_PsCARTHA.Int64.t ->
tval constants : context -> Constants_repr.parametricval patch_constants :
context ->
(Constants_repr.parametric -> Constants_repr.parametric) ->
context Tezos_protocol_environment_006_PsCARTHA.Lwt.tval first_level : context -> Raw_level_repr.tval add_fees :
context ->
Tez_repr.t ->
context Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.tIncrement 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_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.tIncrement 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_006_PsCARTHA.Signature.Public_key_hash.t ->
Tez_repr.t ->
context Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.tIncrement the current block deposit stash for a specific delegate. All the delegates' frozen_deposit accounts are credited at finalize_application
val get_fees : context -> Tez_repr.tval get_rewards : context -> Tez_repr.tval get_deposits :
context ->
Tez_repr.t
Tezos_protocol_environment_006_PsCARTHA.Signature.Public_key_hash.Map.tval check_gas_limit :
t ->
Tezos_protocol_environment_006_PsCARTHA.Z.t ->
unit Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresultval set_gas_limit : t -> Tezos_protocol_environment_006_PsCARTHA.Z.t -> tval gas_level : t -> Gas_limit_repr.tval gas_consumed :
since:t ->
until:t ->
Tezos_protocol_environment_006_PsCARTHA.Z.tval block_gas_level : t -> Tezos_protocol_environment_006_PsCARTHA.Z.tval update_storage_space_to_pay :
t ->
Tezos_protocol_environment_006_PsCARTHA.Z.t ->
tval clear_storage_space_to_pay :
t ->
t * Tezos_protocol_environment_006_PsCARTHA.Z.t * intval init_origination_nonce :
t ->
Tezos_protocol_environment_006_PsCARTHA.Operation_hash.t ->
tval origination_nonce :
t ->
Contract_repr.origination_nonce
Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresultval increment_origination_nonce :
t ->
(t * Contract_repr.origination_nonce)
Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresulttype value = Tezos_protocol_environment_006_PsCARTHA.MBytes.tmodule type T = sig ... endAll 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 := contextval mem : context -> key -> bool Tezos_protocol_environment_006_PsCARTHA.Lwt.tTells if the key is already defined as a value.
val dir_mem :
context ->
key ->
bool Tezos_protocol_environment_006_PsCARTHA.Lwt.tTells if the key is already defined as a directory.
val get :
context ->
key ->
value Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.tRetrieve the value from the storage bucket ; returns a Storage_errorMissing_key if the key is not set.
val get_option :
context ->
key ->
value option Tezos_protocol_environment_006_PsCARTHA.Lwt.tRetrieves the value from the storage bucket ; returns None if the data is not initialized.
val init :
context ->
key ->
value ->
context Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.tAllocates the storage bucket and initializes it ; returns a Storage_errorExisting_key if the bucket exists.
val set :
context ->
key ->
value ->
context Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.tUpdates 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_006_PsCARTHA.Lwt.tAllocates 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_006_PsCARTHA.Lwt.tWhen 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_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.tDelete the storage bucket ; returns a Storage_error
Missing_key if the bucket does not exists.
val remove :
context ->
key ->
context Tezos_protocol_environment_006_PsCARTHA.Lwt.tRemoves the storage bucket and its contents ; does nothing if the bucket does not exists.
val remove_rec :
context ->
key ->
context Tezos_protocol_environment_006_PsCARTHA.Lwt.tRecursively removes all the storage buckets and contents ; does nothing if no bucket exists.
val copy :
context ->
from:key ->
to_:key ->
context Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.tval fold :
context ->
key ->
init:'a ->
f:
([ `Key of key | `Dir of key ] ->
'a ->
'a Tezos_protocol_environment_006_PsCARTHA.Lwt.t) ->
'a Tezos_protocol_environment_006_PsCARTHA.Lwt.tIterator on all the items of a given directory.
val keys :
context ->
key ->
key list Tezos_protocol_environment_006_PsCARTHA.Lwt.tRecursively list all subkeys of a given key.
val fold_keys :
context ->
key ->
init:'a ->
f:(key -> 'a -> 'a Tezos_protocol_environment_006_PsCARTHA.Lwt.t) ->
'a Tezos_protocol_environment_006_PsCARTHA.Lwt.tRecursive iterator on all the subkeys of a given key.
val project : context -> root_contextInternally 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_006_PsCARTHA.Error_monad.tzresultInternally used in Storage_functors to consume gas from within a view.
val check_enough_gas :
context ->
Gas_limit_repr.cost ->
unit Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresultCheck if consume_gas will fail
val description : context Storage_description.tInitialize 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_006_PsCARTHA.Error_monad.tzresultIncrements the internal operation nonce.
val internal_nonce_already_recorded : context -> int -> boolCheck is the internal operation nonce has been taken.
val allowed_endorsements :
context ->
(Tezos_protocol_environment_006_PsCARTHA.Signature.Public_key.t
* int list
* bool)
Tezos_protocol_environment_006_PsCARTHA.Signature.Public_key_hash.Map.tReturns a map where to each endorser's pkh is associated the list of its endorsing slots (in decreasing order) for a given level.
val included_endorsements : context -> intKeep track of the number of endorsements that are included in a block
val init_endorsements :
context ->
(Tezos_protocol_environment_006_PsCARTHA.Signature.Public_key.t
* int list
* bool)
Tezos_protocol_environment_006_PsCARTHA.Signature.Public_key_hash.Map.t ->
contextInitializes the map of allowed endorsements, this function must only be called once.
val record_endorsement :
context ->
Tezos_protocol_environment_006_PsCARTHA.Signature.Public_key_hash.t ->
contextMarks an endorsment in the map as used.
val fresh_temporary_big_map :
context ->
context * Tezos_protocol_environment_006_PsCARTHA.Z.tProvide 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_006_PsCARTHA.Z.t ->
'a Tezos_protocol_environment_006_PsCARTHA.Lwt.t) ->
'a ->
'a Tezos_protocol_environment_006_PsCARTHA.Lwt.tIterate over all created temporary big maps since the last reset_temporary_big_map.