View Source esockd_limiter (esockd v5.9.3-rc.1)
Link to this section Summary
Link to this section Types
-type bucket_info() :: #{name => bucket_name(), capacity => pos_integer(), interval => pos_integer(), tokens => pos_integer(), lasttime => integer()}.
-type bucket_name() :: term().
Link to this section Functions
-spec consume(bucket_name()) -> {Remaing :: integer(), PasueMillSec :: integer()}.
-spec create(esockd_generic_limiter:create_options()) -> esockd_generic_limiter:limiter().
-spec create(bucket_name(), pos_integer()) -> ok.
-spec create(bucket_name(), pos_integer(), pos_integer()) -> ok.
-spec delete(esockd_generic_limiter:limter()) -> ok; (bucket_name()) -> ok.
-spec get_all() -> [bucket_info()].
-spec lookup(bucket_name()) -> undefined | bucket_info().
-spec start_link() -> {ok, pid()}.
-spec stop() -> ok.