Current section

Files

Jump to
active_memory lib adapters adapter.ex
Raw

lib/adapters/adapter.ex

defmodule ActiveMemory.Adapters.Adapter do
  @moduledoc false

  @callback all(atom()) :: list(map())

  @callback count(atom()) :: non_neg_integer()

  @callback create_table(atom()) :: {:ok, :created | :recovered} | {:error, any()}

  @callback delete(map(), atom()) :: :ok | {:error, any()}

  @callback delete_all(atom()) :: :ok | {:error, any()}

  @callback one(map(), atom()) :: {:ok, map()} | {:error, any()}

  @callback one(list(any()), atom()) :: {:ok, map()} | {:error, any()}

  @callback select(map(), atom()) :: {:ok, list(map())} | {:error, any()}

  @callback select(list(any()), atom()) :: {:ok, list(map())} | {:error, any()}

  @callback withdraw(map(), atom()) :: {:ok, map()} | {:error, any()}

  @callback withdraw(list(any()), atom()) :: {:ok, map()} | {:error, any()}

  @callback write(map(), atom()) :: {:ok, map()} | {:error, any()}
end