Jidoka.Memory.Store behaviour (Jidoka v0.8.0-beta.1)

Copy Markdown View Source

Behaviour and delegator for agent memory stores.

Summary

Types

store()

@type store() :: module() | {module(), keyword()}

Callbacks

list_entries(keyword)

@callback list_entries(keyword()) :: {:ok, [Jidoka.Memory.Entry.t()]} | {:error, term()}

recall(t, keyword)

@callback recall(
  Jidoka.Memory.RecallRequest.t(),
  keyword()
) :: {:ok, Jidoka.Memory.RecallResult.t()} | {:error, term()}

write(t, keyword)

@callback write(
  Jidoka.Memory.WriteRequest.t(),
  keyword()
) :: {:ok, Jidoka.Memory.WriteResult.t()} | {:error, term()}

Functions

list_entries(store)

@spec list_entries(store()) :: {:ok, [Jidoka.Memory.Entry.t()]} | {:error, term()}

recall(store, request)

@spec recall(store(), Jidoka.Memory.RecallRequest.t()) ::
  {:ok, Jidoka.Memory.RecallResult.t()} | {:error, term()}

write(store, request)

@spec write(store(), Jidoka.Memory.WriteRequest.t()) ::
  {:ok, Jidoka.Memory.WriteResult.t()} | {:error, term()}