1234567891011121314151617181920212223242526272829303132333435363738394041424344(* Copyright (C) 2017--2018 Petter A. Urkedal <paurkedal@gmail.com>
*
* This library is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at your
* option) any later version, with the OCaml static compilation exception.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
* License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this library. If not, see <http://www.gnu.org/licenses/>.
*)(** Signature for establishing database connections. *)moduletypeS=sigtype'afuture(** The type of a deferred value of type ['a]. *)modulePool:Caqti_pool_sig.Swithtype'afuture:='afuture(** A pool implementation for the current concurrency library. *)moduletypeCONNECTION=Caqti_connection_sig.Swithtype'afuture:='afuture(** The connection API specialized for the current concurrency library. *)typeconnection=(moduleCONNECTION)(** Shortcut for the connection API passed as a value. *)valconnect:Uri.t->(connection,[>Caqti_error.load_or_connect])resultfuture(** [connect uri] locates and loads a driver which can handle [uri], passes
[uri] to the driver, which establish a connection and returns a
first-class module implementing {!Caqti_connection_sig.S}. *)valconnect_pool:?max_size:int->Uri.t->((connection,[>Caqti_error.connect])Pool.t,[>Caqti_error.load])result(** [connect_pool uri] is a pool of database connections constructed by
[connect uri]. *)end