ets.c
Include dependency graph for ets.c:
Defines
-
ETS_ANY_PROCESS -1
-
ETS_WHOLE_TUPLE SIZE_MAX
-
SMP_RDLOCK(table) smp_rwlock_rdlock(table->lock)
-
SMP_WRLOCK(table) smp_rwlock_wrlock(table->lock)
-
SMP_UNLOCK(table) smp_rwlock_unlock(table->lock)
Typedefs
-
typedef enum TableAccess TableAccess
Enums
Functions
-
static struct EtsTable *get_table(Ets *ets, term name_or_ref, int32_t process_id, TableAccess access)
-
static void delete_all_tables(Ets *ets, GlobalContext *global)
-
static void table_destroy(struct EtsTable *table, GlobalContext *global)
-
static ets_result_t lookup_select_maybe_gc(struct EtsTable *table, term key, size_t index, size_t num_roots, term *roots, term *ret, Context *ctx)
-
static ets_result_t lookup_or_default(struct EtsTable *table, term key, term default_tuple, Heap *ret_heap, term *ret, Context *ctx)
-
static ets_result_t apply_spec(term tuple, term spec, size_t key_index)
-
static ets_result_t apply_op(term tuple, term opt, avm_int_t *ret, size_t key_index)
-
void ets_init(Ets *ets)
-
void ets_destroy(Ets *ets, GlobalContext *global)
-
ets_result_t ets_create_table_maybe_gc(term name, bool named, ets_table_type_t type, ets_table_access_t access, size_t key_index, term *ret, Context *ctx)
-
ets_result_t ets_lookup_element_maybe_gc(term name_or_ref, term key, size_t index, term *ret, Context *ctx)
-
ets_result_t ets_update_element(term name_or_ref, term key, term element_spec, term default_tuple, Context *ctx)
-
ets_result_t ets_update_counter_maybe_gc(term name_or_ref, term key, term op, term default_tuple, term *ret, Context *ctx)
-
void ets_delete_owned_tables(Ets *ets, int32_t process_id, GlobalContext *global)
-
struct EtsTable
Collaboration diagram for EtsTable: