Fix ejabberd_sql:sql_query* types
This commit is contained in:
parent
ad7db90c80
commit
f6e8eb52f0
|
@ -93,15 +93,16 @@
|
||||||
-endif.
|
-endif.
|
||||||
|
|
||||||
-type state() :: #state{}.
|
-type state() :: #state{}.
|
||||||
-type sql_query_simple() :: [sql_query() | binary()] | #sql_query{} |
|
-type sql_query_simple(T) :: [sql_query(T) | binary()] | binary() |
|
||||||
fun(() -> any()) | fun((atom(), _) -> any()).
|
#sql_query{} |
|
||||||
-type sql_query() :: sql_query_simple() |
|
fun(() -> T) | fun((atom(), _) -> T).
|
||||||
[{atom() | {atom(), any()}, sql_query_simple()}].
|
-type sql_query(T) :: sql_query_simple(T) |
|
||||||
-type sql_query_result() :: {updated, non_neg_integer()} |
|
[{atom() | {atom(), any()}, sql_query_simple(T)}].
|
||||||
{error, binary() | atom()} |
|
-type sql_query_result(T) :: {updated, non_neg_integer()} |
|
||||||
{selected, [binary()], [[binary()]]} |
|
{error, binary() | atom()} |
|
||||||
{selected, [any()]} |
|
{selected, [binary()], [[binary()]]} |
|
||||||
ok.
|
{selected, [any()]} |
|
||||||
|
T.
|
||||||
|
|
||||||
%%%----------------------------------------------------------------------
|
%%%----------------------------------------------------------------------
|
||||||
%%% API
|
%%% API
|
||||||
|
@ -112,14 +113,14 @@ start_link(Host, I) ->
|
||||||
p1_fsm:start_link({local, Proc}, ?MODULE, [Host],
|
p1_fsm:start_link({local, Proc}, ?MODULE, [Host],
|
||||||
fsm_limit_opts() ++ ?FSMOPTS).
|
fsm_limit_opts() ++ ?FSMOPTS).
|
||||||
|
|
||||||
-spec sql_query(binary(), sql_query()) -> sql_query_result().
|
-spec sql_query(binary(), sql_query(T)) -> sql_query_result(T).
|
||||||
sql_query(Host, Query) ->
|
sql_query(Host, Query) ->
|
||||||
sql_call(Host, {sql_query, Query}).
|
sql_call(Host, {sql_query, Query}).
|
||||||
|
|
||||||
%% SQL transaction based on a list of queries
|
%% SQL transaction based on a list of queries
|
||||||
%% This function automatically
|
%% This function automatically
|
||||||
-spec sql_transaction(binary(), [sql_query()] | fun(() -> any())) ->
|
-spec sql_transaction(binary(), [sql_query(T)] | fun(() -> T)) ->
|
||||||
{atomic, any()} |
|
{atomic, T} |
|
||||||
{aborted, any()}.
|
{aborted, any()}.
|
||||||
sql_transaction(Host, Queries)
|
sql_transaction(Host, Queries)
|
||||||
when is_list(Queries) ->
|
when is_list(Queries) ->
|
||||||
|
@ -177,7 +178,7 @@ sync_send_event(Proc, Msg, Timeout) ->
|
||||||
{error, Reason}
|
{error, Reason}
|
||||||
end.
|
end.
|
||||||
|
|
||||||
-spec sql_query_t(sql_query()) -> sql_query_result().
|
-spec sql_query_t(sql_query(T)) -> sql_query_result(T).
|
||||||
%% This function is intended to be used from inside an sql_transaction:
|
%% This function is intended to be used from inside an sql_transaction:
|
||||||
sql_query_t(Query) ->
|
sql_query_t(Query) ->
|
||||||
QRes = sql_query_internal(Query),
|
QRes = sql_query_internal(Query),
|
||||||
|
|
Loading…
Reference in New Issue