|
Derive-C
|
#include <derive-c/core/includes/def.h>#include "includes.h"#include <derive-c/core/alloc/def.h>#include <derive-c/core/self/def.h>#include <derive-c/core/self/undef.h>#include <derive-c/core/alloc/undef.h>#include <derive-c/core/includes/undef.h>Go to the source code of this file.
Data Structures | |
| struct | value_t |
| struct | KEY_ENTRY |
| struct | SELF |
| An allocator that prints to stdout when it allocates or frees memory. More... | |
| struct | KV_PAIR |
| struct | ITER |
| struct | KV_PAIR_CONST |
| struct | ITER_CONST |
Macros | |
| #define | KEY map_key_t |
| A simple open-addressed hashmap using robin-hood hashing. | |
| #define | KEY_HASH key_hash |
| #define | KEY_EQ DC_MEM_EQ |
| #define | KEY_DELETE DC_NO_DELETE |
| #define | KEY_CLONE DC_COPY_CLONE |
| #define | KEY_DEBUG DC_DEFAULT_DEBUG |
| #define | VALUE value_t |
| #define | VALUE_DELETE DC_NO_DELETE |
| #define | VALUE_CLONE DC_COPY_CLONE |
| #define | VALUE_DEBUG DC_DEFAULT_DEBUG |
| #define | KEY_ENTRY NS(SELF, key_entry) |
| #define | INVARIANT_CHECK(self) |
| #define | KV_PAIR NS(SELF, kv) |
| #define | ITER NS(SELF, iter) |
| #define | KV_PAIR_CONST NS(SELF, kv_const) |
| #define | ITER_CONST NS(SELF, iter_const) |
Typedefs | |
| typedef KV_PAIR | item |
Functions | |
| static size_t | KEY_HASH (KEY const *key) |
| static SELF | new_with_capacity_for (size_t capacity, ALLOC *alloc) |
| static SELF | new (ALLOC *alloc) |
| static SELF | clone (SELF const *self) |
| static VALUE *PRIV | try_insert_no_extend_capacity (SELF *self, KEY key, VALUE value) |
| static void | extend_capacity_for (SELF *self, size_t expected_items) |
| static VALUE * | try_insert (SELF *self, KEY key, VALUE value) |
| static VALUE * | insert (SELF *self, KEY key, VALUE value) |
| static VALUE * | try_write (SELF *self, KEY key) |
| static VALUE * | write (SELF *self, KEY key) |
| static VALUE const * | try_read (SELF const *self, KEY key) |
| static VALUE const * | read (SELF const *self, KEY key) |
| static bool | try_remove (SELF *self, KEY key, VALUE *destination) |
| static VALUE | remove (SELF *self, KEY key) |
| static void | delete_entry (SELF *self, KEY key) |
| static size_t | size (SELF const *self) |
| static bool | empty_item (KV_PAIR const *item) |
| static KV_PAIR | next (ITER *iter) |
| static bool | empty (ITER const *iter) |
| static ITER | get_iter (SELF *self) |
| static void | delete (SELF *self) |
| static bool | empty_item (KV_PAIR_CONST const *item) |
| static KV_PAIR_CONST | next (ITER_CONST *iter) |
| static bool | empty (ITER_CONST const *iter) |
| static ITER_CONST | get_iter_const (SELF const *self) |
| static void | debug (SELF const *self, dc_debug_fmt fmt, FILE *stream) |
| DC_TRAIT_MAP (SELF) | |
| #define INVARIANT_CHECK | ( | self | ) |
Definition at line 87 of file template.h.
Definition at line 392 of file template.h.
Definition at line 465 of file template.h.
| #define KEY map_key_t |
A simple open-addressed hashmap using robin-hood hashing.
Definition at line 15 of file template.h.
| #define KEY_CLONE DC_COPY_CLONE |
Definition at line 37 of file template.h.
| #define KEY_DEBUG DC_DEFAULT_DEBUG |
Definition at line 41 of file template.h.
| #define KEY_DELETE DC_NO_DELETE |
Definition at line 33 of file template.h.
Definition at line 70 of file template.h.
| #define KEY_EQ DC_MEM_EQ |
Definition at line 29 of file template.h.
| #define KEY_HASH key_hash |
Definition at line 24 of file template.h.
Definition at line 385 of file template.h.
Definition at line 458 of file template.h.
| #define VALUE value_t |
Definition at line 51 of file template.h.
| #define VALUE_CLONE DC_COPY_CLONE |
Definition at line 59 of file template.h.
| #define VALUE_DEBUG DC_DEFAULT_DEBUG |
Definition at line 63 of file template.h.
| #define VALUE_DELETE DC_NO_DELETE |
Definition at line 55 of file template.h.
| typedef KV_PAIR_CONST item |
Definition at line 393 of file template.h.
Definition at line 128 of file template.h.
| DC_TRAIT_MAP | ( | SELF | ) |
|
static |
Definition at line 514 of file template.h.
|
static |
Definition at line 441 of file template.h.
Definition at line 375 of file template.h.
|
static |
Definition at line 421 of file template.h.
|
static |
Definition at line 494 of file template.h.
|
static |
Definition at line 395 of file template.h.
|
static |
Definition at line 468 of file template.h.
|
static |
Definition at line 223 of file template.h.
Definition at line 427 of file template.h.
|
static |
Definition at line 500 of file template.h.
Definition at line 255 of file template.h.
|
static |
Definition at line 124 of file template.h.
Definition at line 94 of file template.h.
Definition at line 406 of file template.h.
|
static |
Definition at line 479 of file template.h.
Definition at line 303 of file template.h.
Definition at line 369 of file template.h.
|
static |
Definition at line 380 of file template.h.
Definition at line 245 of file template.h.
Definition at line 167 of file template.h.
Definition at line 285 of file template.h.
Definition at line 309 of file template.h.
Definition at line 261 of file template.h.