Persistent key/value storage (for Ocsigen) using multiple backends
Library ocsipersist
Module Ocsipersist . Store
type 'a t

Type of persistent data

type store

Data are divided into stores. Create one store for your project, where you will save all your data.

val open_store : string -> store Lwt.t

Open a store (and create it if it does not exist)

val make_persistent : store:store -> name:string -> default:'a -> 'a t Lwt.t

make_persistent store name default find a persistent value named name in store store from database, or create it with the default value default if it does not exist.

val make_persistent_lazy : store:store -> name:string -> default:( unit -> 'a ) -> 'a t Lwt.t

Same as make_persistent but the default value is evaluated only if needed

val make_persistent_lazy_lwt : store:store -> name:string -> default:( unit -> 'a Lwt.t ) -> 'a t Lwt.t

Lwt version of make_persistent_lazy.

val get : 'a t -> 'a Lwt.t

get pv gives the value of pv

val set : 'a t -> 'a -> unit Lwt.t

set pv value sets a persistent value pv to value