amnesia v0.2.8 Amnesia.Access behaviour

This behavior is used to implement a different system while taking advantage of mnesia.

It's used by mnesia itself to implement fragmentation using mnesia_frag and mnesia:activity.

Link to this section Summary

Link to this section Types

Link to this opaque

id()

(opaque)
id()
Link to this type

lock_item()

lock_item() :: {:table, atom()} | {:global, any(), [node()]}
Link to this type

lock_kind()

lock_kind() :: :write | :read | :sticky_write

Link to this section Functions

Link to this function

all_keys(id, opaque, table, lock)

all_keys(id(), any(), atom(), lock_kind()) :: [any()]
Link to this function

clear_table(id, opaque, table, object)

clear_table(id(), any(), atom(), any()) ::
  {:atomic, :ok} | {:aborted, any()}
Link to this function

delete(id, opaque, table, key, lock)

delete(id(), any(), atom(), atom(), lock_kind()) :: :ok | no_return()
Link to this function

delete_object(id, opaque, table, record, lock)

delete_object(id(), any(), atom(), tuple(), lock_kind()) :: :ok | no_return()
Link to this function

first(id, opaque, table)

first(id(), any(), atom()) :: any()
Link to this function

foldl(id, opaque, fun, acc, table, lock)

foldl(id(), any(), function(), any(), atom(), lock_kind()) ::
  any() | no_return()
Link to this function

foldr(id, opaque, fun, acc, table, lock)

foldr(id(), any(), function(), any(), atom(), lock_kind()) ::
  any() | no_return()
Link to this function

index_match_object(id, opaque, table, pattern, attribute, lock)

index_match_object(
  id(),
  any(),
  atom(),
  any(),
  atom() | integer(),
  lock_kind()
) :: [any()] | no_return()
Link to this function

index_read(id, opaque, table, key, attribute, lock)

index_read(id(), any(), atom(), any(), atom() | integer(), lock_kind()) ::
  [tuple()] | no_return()
Link to this function

last(id, opaque, table)

last(id(), any(), atom()) :: any()
Link to this function

lock(id, opaque, item, kind)

lock(id(), any(), lock_item(), lock_kind()) :: [node()] | :ok | no_return()
Link to this function

match_object(id, opaque, table, pattern, lock)

match_object(id(), any(), atom(), any(), lock_kind()) ::
  [tuple()] | no_return()
Link to this function

next(id, opaque, table, key)

next(id(), any(), atom(), any()) :: any()
Link to this function

prev(id, opaque, table, key)

prev(id(), any(), atom(), any()) :: any()
Link to this function

read(id, opaque, table, key, lock)

read(id(), any(), atom(), any(), lock_kind()) :: [tuple()] | no_return()
Link to this function

select(id, opaque, table, spec, lock)

select(id(), any(), atom(), any(), lock_kind()) :: [any()]
Link to this function

select(id, opaque, table, spec, limit, lock)

select(id(), any(), atom(), any(), integer(), lock_kind()) :: [any()]
Link to this function

select_cont(id, opaque, cont)

select_cont(id(), any(), any()) :: :"$end_of_table" | {[any()], any()}
Link to this function

table_info(id, opaque, of, key)

table_info(id(), any(), atom() | {atom(), atom()}, atom()) :: any()
Link to this function

write(id, opaque, table, record, lock)

write(id(), any(), atom(), tuple(), lock_kind()) :: :ok | no_return()

Link to this section Callbacks

Link to this callback

all_keys(id, any, atom, lock_kind)

all_keys(id(), any(), atom(), lock_kind()) :: [any()] | no_return()
Link to this callback

clear_table(id, any, atom, any)

clear_table(id(), any(), atom(), any()) ::
  {:atomic, :ok} | {:aborted, any()}
Link to this callback

delete(id, any, atom, any, lock_kind)

delete(id(), any(), atom(), any(), lock_kind()) :: :ok | no_return()
Link to this callback

delete_object(id, any, atom, tuple, lock_kind)

delete_object(id(), any(), atom(), tuple(), lock_kind()) :: :ok | no_return()
Link to this callback

first(id, any, atom)

first(id(), any(), atom()) :: any()
Link to this callback

foldl(id, any, function, any, atom, lock_kind)

foldl(id(), any(), (tuple(), any() -> any()), any(), atom(), lock_kind()) ::
  any() | no_return()
Link to this callback

foldr(id, any, function, any, atom, lock_kind)

foldr(id(), any(), (tuple(), any() -> any()), any(), atom(), lock_kind()) ::
  any() | no_return()
Link to this callback

index_match_object(id, any, atom, any, arg5, lock_kind)

index_match_object(
  id(),
  any(),
  atom(),
  any(),
  atom() | integer(),
  lock_kind()
) :: [any()] | no_return()
Link to this callback

index_read(id, any, atom, any, arg5, lock_kind)

index_read(id(), any(), atom(), any(), atom() | integer(), lock_kind()) ::
  [tuple()] | no_return()
Link to this callback

last(id, any, atom)

last(id(), any(), atom()) :: any()
Link to this callback

lock(id, any, lock_item, lock_kind)

lock(id(), any(), lock_item(), lock_kind()) :: [node()] | :ok | no_return()
Link to this callback

match_object(id, any, atom, any, lock_kind)

match_object(id(), any(), atom(), any(), lock_kind()) ::
  [any()] | no_return()
Link to this callback

next(id, any, atom, any)

next(id(), any(), atom(), any()) :: any()
Link to this callback

prev(id, any, atom, any)

prev(id(), any(), atom(), any()) :: any()
Link to this callback

read(id, any, atom, any, lock_kind)

read(id(), any(), atom(), any(), lock_kind()) :: [tuple()] | no_return()
Link to this callback

select(id, any, atom, any, lock_kind)

select(id(), any(), atom(), any(), lock_kind()) :: [any()]
Link to this callback

select(id, any, atom, any, integer, lock_kind)

select(id(), any(), atom(), any(), integer(), lock_kind()) :: [any()]
Link to this callback

select_cont(id, any, any)

select_cont(id(), any(), any()) :: :"$end_of_table" | {[any()], any()}
Link to this callback

table_info(id, any, arg3, atom)

table_info(id(), any(), atom() | {atom(), atom()}, atom()) :: any()
Link to this callback

write(id, any, atom, tuple, lock_kind)

write(id(), any(), atom(), tuple(), lock_kind()) :: :ok | no_return()