Module Store_utils.Make

Parameters

Signature

type +'a t = 'a B.t

Make_updatable_map(S)(K)(V) constructs a Map which can be persisted on store. The module S defines storage-dependent information about how the map will be saved on and retrieved from the store (for example, it defines the map location in the store). The module K defines the information related to keys of the map, and the module V contains information about how values will be stored to and retrieved from the store. The resulting map allows to update the contents of an existing value for a key.

Make_append_only_map(S)(K)(V) constructs an Append_only_map which can be persisted on store. The module S defines storage-dependent information about how the map will be saved on and retrieved from the store (for example, it defines the map location in the store). The module K contains information related to keys of the map, and the module V contains information about how values will be stored to and retrieved from the store. The resulting map forbids updating the contents of an existing value with a new value, different from the previous one.

Make_mutable_value(S)(V) constructs a Mutable_value for persisting a mutable value in a store. The module parameter S defines the location of the mutable value in the store, and the module parameter V contains information about the type of values that the constructed module will persist in the underlying store.

Make_nested_map(S)(K1)(K2)(V) constructs a Nested_map module using module parameter S to define where the map is going to be persisted on store, K1 and K2 to define the primary and secondary key, respectively, and V to define the values of the resulting Nested_map.