orm

The ORM library provides a storage backend to persist ML values.
IN THIS PACKAGE
Module Orm . Sql_backend
val max_join : int
type transaction_mode = [
| `Deferred
| `Exclusive
| `Immediate
]
type state = {
uuid : int;
name : string;
db : Sqlite3.db;
mutable in_transaction : int;
busyfn : Sqlite3.db -> unit;
mode : transaction_mode;
}
type env = [ `Debug of string list | `Dot of string | `Index of (string * string list) list | `Unique of (string * string list) list ] list
val debug : string -> env -> [< `Bind | `Cache | `Sql ] -> string -> string -> unit
val default_busyfn : Sqlite3.db -> unit
val new_state : string -> state
val raise_sql_error : Sqlite3.Rc.t -> 'a
val try_finally : ( unit -> 'a ) -> ( unit -> 'b ) -> 'a
val db_busy_retry : state -> ( unit -> Sqlite3.Rc.t ) -> Sqlite3.Rc.t
val db_must_ok : state -> ( unit -> Sqlite3.Rc.t ) -> unit
val db_must_done : state -> ( unit -> Sqlite3.Rc.t ) -> unit
val db_must_bind : state -> Sqlite3.stmt -> int -> Sqlite3.Data.t -> unit
val db_must_reset : state -> Sqlite3.stmt -> unit
val db_must_step : state -> Sqlite3.stmt -> unit
val transaction : state -> ( unit -> 'a ) -> 'a
val step_map : state -> Sqlite3.stmt -> ( Sqlite3.stmt -> 'a ) -> 'a list
val lazy_map : state -> Sqlite3.stmt -> ( Sqlite3.stmt -> 'a ) -> unit -> 'a option
val list_foldi : ( 'a -> int -> 'b -> 'a ) -> 'a -> 'b list -> 'a
val list_mapi : ( int -> 'a -> 'b ) -> 'a list -> 'b list
val map_strings : string -> ( 'a -> string ) -> 'a list -> string
val map_stringsi : string -> ( int -> 'a -> string ) -> 'a list -> string
val list_iteri : ( int -> 'a -> 'b ) -> 'a list -> unit
val string_of_data : Sqlite3.Data.t -> string
module Name : sig ... end
exception Process_error of Dyntype.Type.t * string
val process_error : Dyntype.Type.t -> string -> 'a
val with_valid_type : ( string -> Dyntype.Type.t -> 'a ) -> Dyntype.Type.t -> 'a
val is_enum : Dyntype.Type.t -> bool
val get_enum_type : Dyntype.Type.t -> Dyntype.Type.t
val get_internal_type : Dyntype.Type.t -> Dyntype.Type.t
val nb_of_qmarks : string -> int
val exec_sql : tag:string -> env:env -> db:state -> string -> Sqlite3.Data.t list -> ( Sqlite3.stmt -> 'a ) -> 'a
val field_names_of_type : id:bool -> Dyntype.Type.t -> string list
val field_types_of_type : id:bool -> Dyntype.Type.t -> string list
type table = [
| `Enum
| `Foreign
]
val subtables_of_type : Dyntype.Type.t -> (string * Dyntype.Type.t) list * (string * string * [> `Enum | `Foreign ] * string) list
val enum_subtables_of_type : Dyntype.Type.t -> (string * string * [> `Enum | `Foreign ] * string) list
val field_names_of_value : id:bool -> Dyntype.Value.t -> string list
val subtables_of_value : Dyntype.Value.t -> (string * Dyntype.Value.t list) list