Elixir-native implementation of all FerricStore data-type operations, delegating to Router and command handlers.
Summary
Functions
@spec append(FerricStore.Instance.t(), binary(), binary()) :: {:ok, non_neg_integer()}
@spec bf_add(FerricStore.Instance.t(), binary(), binary()) :: {:ok, term()} | {:error, binary()}
@spec bf_card(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec bf_exists(FerricStore.Instance.t(), binary(), binary()) :: {:ok, term()} | {:error, binary()}
@spec bf_info(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec bf_madd(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec bf_mexists(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec bf_reserve(FerricStore.Instance.t(), binary(), number(), pos_integer()) :: :ok | {:error, binary()}
@spec cf_add(FerricStore.Instance.t(), binary(), binary()) :: {:ok, term()} | {:error, binary()}
@spec cf_addnx(FerricStore.Instance.t(), binary(), binary()) :: {:ok, term()} | {:error, binary()}
@spec cf_count(FerricStore.Instance.t(), binary(), binary()) :: {:ok, term()} | {:error, binary()}
@spec cf_del(FerricStore.Instance.t(), binary(), binary()) :: {:ok, term()} | {:error, binary()}
@spec cf_exists(FerricStore.Instance.t(), binary(), binary()) :: {:ok, term()} | {:error, binary()}
@spec cf_info(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec cf_mexists(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec cf_reserve(FerricStore.Instance.t(), binary(), pos_integer()) :: :ok | {:error, binary()}
@spec cms_incrby(FerricStore.Instance.t(), binary(), [{binary(), pos_integer()}]) :: {:ok, term()} | {:error, binary()}
@spec cms_info(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec cms_initbydim(FerricStore.Instance.t(), binary(), pos_integer(), pos_integer()) :: :ok | {:error, binary()}
@spec cms_initbyprob(FerricStore.Instance.t(), binary(), number(), number()) :: :ok | {:error, binary()}
@spec cms_merge(FerricStore.Instance.t(), binary(), [binary()], keyword()) :: :ok | {:error, binary()}
@spec cms_query(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec dbsize(FerricStore.Instance.t()) :: {:ok, non_neg_integer()}
@spec del(FerricStore.Instance.t(), [binary()]) :: {:ok, non_neg_integer()}
@spec exists?(FerricStore.Instance.t(), binary()) :: {:ok, boolean()}
@spec expire(FerricStore.Instance.t(), binary(), integer()) :: 0 | 1 | {:error, binary()}
@spec flushdb(FerricStore.Instance.t()) :: :ok
@spec get(FerricStore.Instance.t(), binary(), keyword()) :: {:ok, binary() | nil}
@spec getdel(FerricStore.Instance.t(), binary()) :: {:ok, binary() | nil}
@spec getex(FerricStore.Instance.t(), binary(), keyword()) :: {:ok, binary() | nil}
@spec getrange(FerricStore.Instance.t(), binary(), integer(), integer()) :: {:ok, binary()}
@spec getset(FerricStore.Instance.t(), binary(), binary()) :: {:ok, binary() | nil}
@spec hdel(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec hexists(FerricStore.Instance.t(), binary(), binary()) :: {:ok, boolean()}
@spec hget(FerricStore.Instance.t(), binary(), binary()) :: {:ok, binary() | nil}
@spec hgetall(FerricStore.Instance.t(), binary()) :: {:ok, map()} | {:error, binary()}
@spec hlen(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec hset(FerricStore.Instance.t(), binary(), map()) :: {:ok, term()} | {:error, binary()}
@spec incr(FerricStore.Instance.t(), binary(), integer()) :: {:ok, integer()} | {:error, binary()}
@spec incr_float(FerricStore.Instance.t(), binary(), float()) :: {:ok, binary()} | {:error, binary()}
@spec keys( FerricStore.Instance.t(), keyword() ) :: {:ok, [binary()]}
@spec llen(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec lpop(FerricStore.Instance.t(), binary(), pos_integer()) :: {:ok, term()} | {:error, binary()}
@spec lpush(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec mget(FerricStore.Instance.t(), [binary()]) :: {:ok, [binary() | nil]}
@spec mset(FerricStore.Instance.t(), [{binary(), binary()}]) :: :ok
@spec persist(FerricStore.Instance.t(), binary()) :: 0 | 1
@spec pexpire(FerricStore.Instance.t(), binary(), integer()) :: 0 | 1 | {:error, binary()}
@spec psetex(FerricStore.Instance.t(), binary(), pos_integer(), binary()) :: :ok
@spec pttl(FerricStore.Instance.t(), binary()) :: {:ok, integer()}
@spec rpop(FerricStore.Instance.t(), binary(), pos_integer()) :: {:ok, term()} | {:error, binary()}
@spec rpush(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec sadd(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec scard(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec setex(FerricStore.Instance.t(), binary(), pos_integer(), binary()) :: :ok
@spec setnx(FerricStore.Instance.t(), binary(), binary()) :: {:ok, boolean()}
@spec setrange(FerricStore.Instance.t(), binary(), non_neg_integer(), binary()) :: {:ok, non_neg_integer()}
@spec sismember(FerricStore.Instance.t(), binary(), binary()) :: {:ok, boolean()}
@spec smembers(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec spop(FerricStore.Instance.t(), binary(), pos_integer()) :: {:ok, term()} | {:error, binary()}
@spec srem(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec strlen(FerricStore.Instance.t(), binary()) :: {:ok, non_neg_integer()}
@spec tdigest_add(FerricStore.Instance.t(), binary(), [number()]) :: :ok | {:error, binary()}
@spec tdigest_cdf(FerricStore.Instance.t(), binary(), [number()]) :: {:ok, term()} | {:error, binary()}
@spec tdigest_create(FerricStore.Instance.t(), binary(), keyword()) :: :ok | {:error, binary()}
@spec tdigest_info(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec tdigest_max(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec tdigest_min(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec tdigest_quantile(FerricStore.Instance.t(), binary(), [number()]) :: {:ok, term()} | {:error, binary()}
@spec tdigest_reset(FerricStore.Instance.t(), binary()) :: :ok | {:error, binary()}
@spec topk_add(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec topk_info(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec topk_list(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec topk_query(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec topk_reserve(FerricStore.Instance.t(), binary(), pos_integer()) :: :ok | {:error, binary()}
@spec ttl(FerricStore.Instance.t(), binary()) :: {:ok, integer()}
@spec zcard(FerricStore.Instance.t(), binary()) :: {:ok, term()} | {:error, binary()}
@spec zrem(FerricStore.Instance.t(), binary(), [binary()]) :: {:ok, term()} | {:error, binary()}
@spec zscore(FerricStore.Instance.t(), binary(), binary()) :: {:ok, term()}