Repodb.Repo.Make
repodb · API reference
Parameters
module D : Driver.SSignature
type conn = D.connectionmodule Ddl : sig ... endval placeholder : int -> stringval db_error : D.error -> Error.db_errorval map_driver_result : ('a, D.error) result -> ('a, Error.db_error) resultval map_rows : ('a -> 'b) -> 'a list -> 'b listval exec_sql :
D.connection ->
string ->
params:Repodb.Driver.Value.t array ->
(unit, Error.db_error) resultval query_sql :
D.connection ->
string ->
params:Repodb.Driver.Value.t array ->
(Repodb.Driver.row list, Error.db_error) resultval query_one_sql :
D.connection ->
string ->
params:Repodb.Driver.Value.t array ->
(Repodb.Driver.row option, Error.db_error) resultval get :
D.connection ->
table:Schema.table ->
id:int ->
decode:(Repodb.Driver.row -> 'a) ->
('a, Error.db_error) resultval get_opt :
D.connection ->
table:Schema.table ->
id:int ->
decode:(Repodb.Driver.row -> 'a) ->
('a option, Error.db_error) resultval all :
D.connection ->
table:Schema.table ->
decode:(Repodb.Driver.row -> 'a) ->
('a list, Error.db_error) resultval insert :
D.connection ->
table:Schema.table ->
columns:string list ->
values:Repodb.Driver.Value.t list ->
(unit, Error.db_error) resultval insert_returning :
D.connection ->
table:Schema.table ->
columns:string list ->
values:Repodb.Driver.Value.t list ->
decode:(Repodb.Driver.row -> 'a) ->
('a, Error.db_error) resultval update :
D.connection ->
table:Schema.table ->
columns:string list ->
values:Repodb.Driver.Value.t list ->
where_column:string ->
where_value:Repodb.Driver.Value.t ->
(unit, Error.db_error) resultval delete :
D.connection ->
table:Schema.table ->
where_column:string ->
where_value:Repodb.Driver.Value.t ->
(unit, Error.db_error) resultval transaction :
D.connection ->
(D.connection -> ('a, Error.db_error) result) ->
('a, Error.db_error) resultval preload_has_many :
D.connection ->
'a list ->
assoc:'b Assoc.t ->
get_owner_id:('a -> IntMap.key) ->
decode_related:(Repodb.Driver.row -> 'c) ->
get_fk:('c -> IntMap.key) ->
set_assoc:('c list -> 'a -> 'a) ->
('a list, Error.db_error) resultval preload_has_one :
D.connection ->
'a list ->
assoc:'b Assoc.t ->
get_owner_id:('a -> IntMap.key) ->
decode_related:(Repodb.Driver.row -> 'c) ->
get_fk:('c -> IntMap.key) ->
set_assoc:('c option -> 'a -> 'a) ->
('a list, Error.db_error) resultval preload_belongs_to :
D.connection ->
'a list ->
assoc:'b Assoc.t ->
get_fk:('a -> int option) ->
decode_related:(Repodb.Driver.row -> 'c) ->
get_related_id:('c -> IntMap.key) ->
set_assoc:('c option -> 'a -> 'a) ->
('a list, Error.db_error) resultval preload_many_to_many :
D.connection ->
'a list ->
assoc:'b Assoc.t ->
get_owner_id:('a -> IntMap.key) ->
decode_related:(Driver.row -> 'c) ->
set_assoc:('c list -> 'a -> 'a) ->
('a list, Error.db_error) resultval preload_chunked :
'a ->
chunk_size:int ->
fetch_chunk:(unit -> ('b list, 'c) result) ->
preload:('a -> 'b list -> ('d, 'c) result) ->
process:('d -> 'e) ->
(unit, 'c) resultval all_query :
D.connection ->
('a, 'b) Query.t ->
decode:(Repodb.Driver.row -> 'c) ->
('c list, Error.db_error) resultval one_query :
D.connection ->
('a, 'b) Query.t ->
decode:(Repodb.Driver.row -> 'c) ->
('c, Error.db_error) resultval one_query_opt :
D.connection ->
('a, 'b) Query.t ->
decode:(Repodb.Driver.row -> 'c) ->
('c option, Error.db_error) resultval insert_query :
D.connection ->
('a, 'b) Query.t ->
(unit, Error.db_error) resultval update_query :
D.connection ->
('a, 'b) Query.t ->
(unit, Error.db_error) resultval delete_query :
D.connection ->
('a, 'b) Query.t ->
(unit, Error.db_error) resultval insert_query_returning :
D.connection ->
('a, 'b) Query.t ->
decode:(Repodb.Driver.row -> 'c) ->
('c, Error.db_error) resultval update_query_returning :
D.connection ->
('a, 'b) Query.t ->
decode:(Repodb.Driver.row -> 'c) ->
('c list, Error.db_error) resultval delete_query_returning :
D.connection ->
('a, 'b) Query.t ->
decode:(Repodb.Driver.row -> 'c) ->
('c list, Error.db_error) result