package sanddb

  1. Overview
  2. Docs

Sanddb.Database contains the type of the database and it's internal implementation.

module type T = sig ... end

Database.T is the (module) type of the database. In SandDB every database instance will have this type regardles of the serializing method.

val database_read_all_records : Lwt_io.file_name -> (module Serializer.Generic_serializer with type t = Sanddb__.Record_t.t) -> (module Serializer.Generic_serializer with type t = 'a) -> (Record_id.t * 'a, exn) Base.Result.t Base.List.t Lwt.t
val filter_duplicate_record : ('a * 'b, 'c) Stdlib.result -> (('d, 'e) Base.Set.t * ('a * 'b, 'c) Stdlib.result Base.List.t) -> ('d, 'e) Base.Set.t * ('a * 'b, 'c) Stdlib.result Base.List.t
val database_read_visible_records : Lwt_io.file_name -> (module Serializer.Generic_serializer with type t = Sanddb__.Record_t.t) -> (module Serializer.Generic_serializer with type t = 'a) -> (Record_id.t * 'a, exn) Base.Result.t Base.List.t Lwt.t
val database_insert_record : Lwt_io.file_name -> (module Serializer.Generic_serializer with type t = Sanddb__.Record_t.t) -> (module Serializer.Generic_serializer with type t = 'a) -> 'b -> Record_id.t Lwt.t
val database_insert_shadowing_record : Lwt_io.file_name -> (module Serializer.Generic_serializer with type t = Sanddb__.Record_t.t) -> (module Serializer.Generic_serializer with type t = 'a) -> Record_id.t -> 'b -> Record_id.t Lwt.t
val create_database_module : Lwt_io.file_name -> (module Serializer.Generic_serializer with type t = Sanddb__.Record_t.t) -> (module Serializer.Generic_serializer with type t = 'a) -> (module T with type t = 'a0)
val create_json_database : Lwt_io.file_name -> (module Serializer.Json_serializer with type t = 'a) -> (module T with type t = 'b)
val create_biniou_database : Lwt_io.file_name -> (module Serializer.Biniou_serializer with type t = 'a) -> (module T with type t = 'b)