View Source Nostrum.Cache.UserCache.ETS (Nostrum v0.10.0)

An ETS-based cache for users.

If you need to get the table reference for the table used by this module, please use the table/0 function.

Summary

Functions

Bulk create a list of users from upstream data.

Returns a specification to start this module under a supervisor.

Create a user from upstream data.

Retrieve a user from the cache.

Set up the ETS table.

Start the supervisor.

Retrieve the ETS table reference used for the cache.

Update a user from upstream data.

Functions

Link to this function

bulk_create(users)

View Source (since 0.5.0)
@spec bulk_create(Enum.t()) :: :ok

Bulk create a list of users from upstream data.

Link to this function

child_spec(init_arg)

View Source (since 0.5.0)

Returns a specification to start this module under a supervisor.

See Supervisor.

Link to this function

create(payload)

View Source (since 0.5.0)
@spec create(map()) :: Nostrum.Struct.User.t()

Create a user from upstream data.

@spec get(Nostrum.Struct.User.id()) ::
  {:ok, Nostrum.Struct.User.t()} | {:error, :user_not_found}

Retrieve a user from the cache.

Link to this function

init(init_arg)

View Source (since 0.5.0)

Set up the ETS table.

Link to this function

start_link(init_arg)

View Source (since 0.5.0)

Start the supervisor.

@spec table() :: :ets.table()

Retrieve the ETS table reference used for the cache.

Link to this function

update(info)

View Source (since 0.5.0)
@spec update(map()) :: {Nostrum.Struct.User.t() | nil, Nostrum.Struct.User.t()}

Update a user from upstream data.