From 4cb6c319185e09725203c6a12a78047742cbe4c6 Mon Sep 17 00:00:00 2001 From: JianBo He Date: Thu, 16 Jul 2020 16:27:12 +0800 Subject: [PATCH] fix(types): fix types define error --- src/ecpool.erl | 12 +++++++++--- src/ecpool_worker.erl | 13 ------------- 2 files changed, 9 insertions(+), 16 deletions(-) diff --git a/src/ecpool.erl b/src/ecpool.erl index 58b587e91..31f7aff10 100644 --- a/src/ecpool.erl +++ b/src/ecpool.erl @@ -91,16 +91,22 @@ add_reconnect_callback(Pool, Callback) -> ok. %% @doc Call the fun with client/connection --spec(with_client(atom(), fun((Client :: pid()) -> any())) -> no_return()). +-spec(with_client(atom(), fun((Client :: pid()) -> Ret)) + -> Ret | {error, term()} + when Ret :: term()). with_client(Pool, Fun) when is_atom(Pool) -> with_worker(gproc_pool:pick_worker(name(Pool)), Fun). %% @doc Call the fun with client/connection --spec(with_client(atom(), any(), fun((Client :: pid()) -> term())) -> no_return()). +-spec(with_client(atom(), any(), fun((Client :: pid()) -> Ret)) + -> Ret | {error, term()} + when Ret :: term()). with_client(Pool, Key, Fun) when is_atom(Pool) -> with_worker(gproc_pool:pick_worker(name(Pool), Key), Fun). --spec(with_worker(Worker :: pid(), fun((Client :: pid()) -> any())) -> no_return()). +-spec(with_worker(Worker :: pid(), fun((Client :: pid()) -> Ret)) + -> Ret | {error, term()} + when Ret :: term()). with_worker(Worker, Fun) -> case ecpool_worker:client(Worker) of {ok, Client} -> Fun(Client); diff --git a/src/ecpool_worker.erl b/src/ecpool_worker.erl index 182a6c497..2a0d9a288 100644 --- a/src/ecpool_worker.erl +++ b/src/ecpool_worker.erl @@ -51,22 +51,9 @@ %% Callback %%-------------------------------------------------------------------- --ifdef(use_specs). - -callback(connect(ConnOpts :: list()) -> {ok, pid()} | {error, Reason :: term()}). --else. - --export([behaviour_info/1]). - -behaviour_info(callbacks) -> - [{connect, 1}]; -behaviour_info(_Other) -> - undefined. - --endif. - %%-------------------------------------------------------------------- %% API %%--------------------------------------------------------------------