|
Objectively
Ultra-lightweight object oriented framework for GNU C.
|
#include "Config.h"#include <assert.h>#include <ctype.h>#include <stdlib.h>#include <string.h>#include "Hash.h"#include "HashTable.h"Go to the source code of this file.
Macros | |
| #define | _Class _HashTable |
| #define | HASHTABLE_DEFAULT_CAPACITY 16 |
| #define | HASHTABLE_GROW_FACTOR 2 |
| #define | HASHTABLE_MAX_LOAD 0.75f |
Functions | |
| Class * | _HashTable (void) |
| static void | _remove (HashTable *self, const ident key) |
| static bool | containsKey (const HashTable *self, const ident key) |
| static void | dealloc (Object *self) |
| static void | enumerate (const HashTable *self, HashTableEnumerator enumerator, ident data) |
| static ident | get (const HashTable *self, const ident key) |
| bool | HashTableEqualDirect (const ident a, const ident b) |
| bool | HashTableEqualStr (const ident a, const ident b) |
| bool | HashTableEqualStri (const ident a, const ident b) |
| size_t | HashTableHashDirect (const ident key) |
| size_t | HashTableHashStr (const ident key) |
| Common hash functions for use with HashTable. | |
| size_t | HashTableHashStri (const ident key) |
| static HashTable * | init (HashTable *self, HashTableHashFunc hash, HashTableEqualFunc equal) |
| static void | initialize (Class *clazz) |
| static HashTable * | initWithCapacity (HashTable *self, HashTableHashFunc hash, HashTableEqualFunc equal, size_t capacity) |
| static void | removeAll (HashTable *self) |
| static void | resize (HashTable *self, size_t capacity) |
| Rehashes all entries into a new bucket array of the given capacity. | |
| static void | set (HashTable *self, const ident key, const ident value) |
| #define _Class _HashTable |
Definition at line 34 of file HashTable.c.
| #define HASHTABLE_DEFAULT_CAPACITY 16 |
Definition at line 36 of file HashTable.c.
| #define HASHTABLE_GROW_FACTOR 2 |
Definition at line 37 of file HashTable.c.
| #define HASHTABLE_MAX_LOAD 0.75f |
Definition at line 38 of file HashTable.c.
| Class * _HashTable | ( | void | ) |
Definition at line 328 of file HashTable.c.
Definition at line 200 of file HashTable.c.
Definition at line 131 of file HashTable.c.
|
static |
Definition at line 101 of file HashTable.c.
|
static |
Definition at line 139 of file HashTable.c.
Definition at line 58 of file HashTable.c.
Definition at line 78 of file HashTable.c.
| size_t HashTableHashDirect | ( | const ident | key | ) |
Definition at line 85 of file HashTable.c.
| size_t HashTableHashStr | ( | const ident | key | ) |
Common hash functions for use with HashTable.
Definition at line 45 of file HashTable.c.
| size_t HashTableHashStri | ( | const ident | key | ) |
Definition at line 65 of file HashTable.c.
|
static |
Definition at line 171 of file HashTable.c.
|
static |
Definition at line 310 of file HashTable.c.
|
static |
|
static |
Definition at line 227 of file HashTable.c.
|
static |
Rehashes all entries into a new bucket array of the given capacity.
Definition at line 251 of file HashTable.c.
Definition at line 275 of file HashTable.c.