Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Source file sqlgg_traits.ml
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128(**
OCaml traits signature for sqlgg
by ygrek
2014-06-08
This is free and unencumbered software released into the public domain.
Anyone is free to copy, modify, publish, use, compile, sell, or
distribute this software, either in source code form or as a compiled
binary, for any purpose, commercial or non-commercial, and by any
means.
For more information, please refer to <http://unlicense.org/>
*)moduletypeValue=sigtypet(** Return the literal representation of the value in the SQL dialect. *)valto_literal:t->stringendmoduletypeM=sigtypestatementtype-'aconnectiontypeparamstyperowtyperesult(** datatypes *)moduleTypes:sigmoduleBool:ValuemoduleInt:ValuemoduleFloat:ValuemoduleText:ValuemoduleBlob:ValuemoduleDecimal:ValuemoduleDatetime:ValuemoduleAny:ValueendopenTypestypenum=Int.ttypetext=Text.ttypeany=Any.ttypedatetime=Datetime.texceptionOopsofstringvalget_column_Bool:row->int->Bool.tvalget_column_Int:row->int->Int.tvalget_column_Text:row->int->Text.tvalget_column_Any:row->int->Any.tvalget_column_Float:row->int->Float.tvalget_column_Decimal:row->int->Decimal.tvalget_column_Datetime:row->int->Datetime.tvalget_column_Bool_nullable:row->int->Bool.toptionvalget_column_Int_nullable:row->int->Int.toptionvalget_column_Text_nullable:row->int->Text.toptionvalget_column_Any_nullable:row->int->Any.toptionvalget_column_Float_nullable:row->int->Float.toptionvalget_column_Decimal_nullable:row->int->Decimal.toptionvalget_column_Datetime_nullable:row->int->Datetime.toptionvalstart_params:statement->int->paramsvalfinish_params:params->result(** [set_param_* stmt index val]. [index] is 0-based,
@raise Oops on error *)valset_param_null:params->unitvalset_param_Text:params->Text.t->unitvalset_param_Any:params->Any.t->unitvalset_param_Bool:params->Bool.t->unitvalset_param_Int:params->Int.t->unitvalset_param_Float:params->Float.t->unitvalset_param_Decimal:params->Decimal.t->unitvalset_param_Datetime:params->Datetime.t->unitvalno_params:statement->result(**
Perform query (cardinality "any") and return results via callback for each row
@raise Oops on error
*)valselect:[>`RO]connection->string->(statement->result)->(row->unit)->unit(**
Perform query (cardinality "zero or one") and return first row if available
@raise Oops on error
*)valselect_one_maybe:[>`RO]connection->string->(statement->result)->(row->'r)->'roption(**
Perform query (cardinality "one") and return first row
@raise Oops on error
*)valselect_one:[>`RO]connection->string->(statement->result)->(row->'r)->'r(** Execute non-query.
@raise Oops on error
@return number of affected rows
*)valexecute:[>`WR]connection->string->(statement->result)->int64endmoduletypeM_io=sigincludeMmoduleIO:Sqlgg_io.Mvalfinish_params:params->resultIO.futurevalno_params:statement->resultIO.futurevalselect:[>`RO]connection->string->(statement->resultIO.future)->(row->unit)->unitIO.futurevalselect_one_maybe:[>`RO]connection->string->(statement->resultIO.future)->(row->'b)->'boptionIO.futurevalselect_one:[>`RO]connection->string->(statement->resultIO.future)->(row->'b)->'bIO.futurevalexecute:[>`WR]connection->string->(statement->resultIO.future)->int64IO.futureend