package tezos-protocol-006-PsCARTHA

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Maximal space available without needing to burn new fees.

include Storage_sigs.Non_iterable_indexed_data_storage with type key = Contract_repr.t with type value = Z.t with type t := Raw_context.t
type context = Raw_context.t
type key = Contract_repr.t

An abstract type for keys

type value = Z.t

The type of values

val mem : context -> key -> bool Lwt.t

Tells if a given key is already bound to a storage bucket

val get : context -> key -> (value, Tezos_protocol_environment_006_PsCARTHA__Environment.Error_monad.error list) result Lwt.t

Retrieve a value from the storage bucket at a given key ; returns Storage_errorMissing_key if the key is not set ; returns Storage_errorCorrupted_data if the deserialisation fails.

val get_option : context -> key -> (value option, Tezos_protocol_environment_006_PsCARTHA__Environment.Error_monad.error list) result Lwt.t

Retrieve a value from the storage bucket at a given key ; returns None if the value is not set ; returns Storage_error Corrupted_data if the deserialisation fails.

val set : context -> key -> value -> (Raw_context.t, Tezos_protocol_environment_006_PsCARTHA__Environment.Error_monad.error list) result Lwt.t

Updates the content of a bucket ; returns A Storage_Error Missing_key if the value does not exists.

val init : context -> key -> value -> (Raw_context.t, Tezos_protocol_environment_006_PsCARTHA__Environment.Error_monad.error list) result Lwt.t

Allocates a storage bucket at the given key and initializes it ; returns a Storage_errorExisting_key if the bucket exists.

val init_set : context -> key -> value -> Raw_context.t Lwt.t

Allocates a storage bucket at the given key and initializes it with a value ; just updates it if the bucket exists.

val set_option : context -> key -> value option -> Raw_context.t 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 -> (Raw_context.t, Tezos_protocol_environment_006_PsCARTHA__Environment.Error_monad.error list) result Lwt.t

Delete a storage bucket and its contents ; returns a Storage_errorMissing_key if the bucket does not exists.

val remove : context -> key -> Raw_context.t Lwt.t

Removes a storage bucket and its contents ; does nothing if the bucket does not exists.

val clear : context -> Raw_context.t Lwt.t

Empties all the keys and associated data.

val keys : context -> key list Lwt.t

Lists all the keys.

val bindings : context -> (key * value) list Lwt.t

Lists all the keys and associated data.

val fold : context -> init:'a -> f:(key -> value -> 'a -> 'a Lwt.t) -> 'a Lwt.t

Iterates over all the keys and associated data.

val fold_keys : context -> init:'a -> f:(key -> 'a -> 'a Lwt.t) -> 'a Lwt.t

Iterate over all the keys.