geany
1.38
About: Geany is a text editor (using GTK2) with basic features of an integrated development environment (syntax highlighting, code folding, symbol name auto-completion, ...). F: office T: editor programming GTK+ IDE
![]() ![]() |
Go to the source code of this file.
Macros | |
#define | HT_PTR_TO_INT(P) ((int)(intptr_t)(P)) |
#define | HT_INT_TO_PTR(P) ((void*)(intptr_t)(P)) |
#define | HT_PTR_TO_UINT(P) ((unsigned int)(uintptr_t)(P)) |
#define | HT_UINT_TO_PTR(P) ((void*)(uintptr_t)(P)) |
Typedefs | |
typedef struct sHashTable | hashTable |
typedef unsigned int(* | hashTableHashFunc) (const void *const key) |
typedef bool(* | hashTableEqualFunc) (const void *a, const void *b) |
typedef void(* | hashTableFreeFunc) (void *ptr) |
typedef bool(* | hashTableForeachFunc) (const void *key, void *value, void *user_data) |
Functions | |
unsigned int | hashPtrhash (const void *x) |
bool | hashPtreq (const void *a, const void *constb) |
unsigned int | hashCstrhash (const void *x) |
bool | hashCstreq (const void *a, const void *b) |
unsigned int | hashCstrcasehash (const void *x) |
bool | hashCstrcaseeq (const void *a, const void *b) |
unsigned int | hashInthash (const void *x) |
bool | hashInteq (const void *a, const void *b) |
hashTable * | hashTableNew (unsigned int size, hashTableHashFunc hashfn, hashTableEqualFunc equalfn, hashTableFreeFunc keyfreefn, hashTableFreeFunc valfreefn) |
void | hashTableDelete (hashTable *htable) |
void | hashTableClear (hashTable *htable) |
void | hashTablePutItem (hashTable *htable, void *key, void *value) |
void * | hashTableGetItem (hashTable *htable, const void *key) |
bool | hashTableHasItem (hashTable *htable, const void *key) |
bool | hashTableDeleteItem (hashTable *htable, const void *key) |
bool | hashTableForeachItem (hashTable *htable, hashTableForeachFunc proc, void *user_data) |
bool | hashTableForeachItemOnChain (hashTable *htable, const void *key, hashTableForeachFunc proc, void *user_data) |
int | hashTableCountItem (hashTable *htable) |
hashTable * | hashTableIntNew (unsigned int size, hashTableHashFunc hashfn, hashTableEqualFunc equalfn, hashTableFreeFunc keyfreefn) |
typedef struct sHashTable hashTable |
typedef bool(* hashTableEqualFunc) (const void *a, const void *b) |
typedef bool(* hashTableForeachFunc) (const void *key, void *value, void *user_data) |
typedef unsigned int(* hashTableHashFunc) (const void *const key) |
bool hashCstrcaseeq | ( | const void * | a, |
const void * | b | ||
) |
unsigned int hashCstrcasehash | ( | const void * | x | ) |
unsigned int hashCstrhash | ( | const void * | x | ) |
void hashTableClear | ( | hashTable * | htable | ) |
Definition at line 170 of file htable.c.
References entry, entry_reclaim(), sHashTable::keyfreefn, NULL, sHashTable::size, sHashTable::table, and sHashTable::valfreefn.
Referenced by hashTableDelete().
int hashTableCountItem | ( | hashTable * | htable | ) |
Definition at line 261 of file htable.c.
References count(), and hashTableForeachItem().
void hashTableDelete | ( | hashTable * | htable | ) |
Definition at line 159 of file htable.c.
References eFree(), hashTableClear(), and sHashTable::table.
Referenced by initializeParsing().
bool hashTableDeleteItem | ( | hashTable * | htable, |
const void * | key | ||
) |
Definition at line 202 of file htable.c.
References entry_delete(), sHashTable::equalfn, sHashTable::hashfn, sHashTable::keyfreefn, sHashTable::size, sHashTable::table, and sHashTable::valfreefn.
bool hashTableForeachItem | ( | hashTable * | htable, |
hashTableForeachFunc | proc, | ||
void * | user_data | ||
) |
Definition at line 216 of file htable.c.
References entry_foreach(), sHashTable::size, and sHashTable::table.
Referenced by hashTableCountItem().
bool hashTableForeachItemOnChain | ( | hashTable * | htable, |
const void * | key, | ||
hashTableForeachFunc | proc, | ||
void * | user_data | ||
) |
Definition at line 238 of file htable.c.
References entry_foreach(), sHashTable::equalfn, sHashTable::hashfn, sHashTable::size, sHashTable::table, chainTracker::target_key, track_chain(), and chainTracker::user_data.
void * hashTableGetItem | ( | hashTable * | htable, |
const void * | key | ||
) |
Definition at line 194 of file htable.c.
References entry_find(), sHashTable::equalfn, sHashTable::hashfn, sHashTable::size, and sHashTable::table.
Referenced by getNamedLanguageFull(), and hashTableHasItem().
bool hashTableHasItem | ( | hashTable * | htable, |
const void * | key | ||
) |
Definition at line 211 of file htable.c.
References hashTableGetItem().
hashTable * hashTableIntNew | ( | unsigned int | size, |
hashTableHashFunc | hashfn, | ||
hashTableEqualFunc | equalfn, | ||
hashTableFreeFunc | keyfreefn | ||
) |
Definition at line 151 of file htable.c.
References hashTableNew(), and NULL.
hashTable * hashTableNew | ( | unsigned int | size, |
hashTableHashFunc | hashfn, | ||
hashTableEqualFunc | equalfn, | ||
hashTableFreeFunc | keyfreefn, | ||
hashTableFreeFunc | valfreefn | ||
) |
Definition at line 131 of file htable.c.
References sHashTable::equalfn, sHashTable::hashfn, sHashTable::keyfreefn, sHashTable::size, sHashTable::table, sHashTable::valfreefn, xCalloc, and xMalloc.
Referenced by hashTableIntNew(), and initializeParsing().
void hashTablePutItem | ( | hashTable * | htable, |
void * | key, | ||
void * | value | ||
) |
Definition at line 186 of file htable.c.
References entry_new(), sHashTable::hashfn, sHashTable::size, and sHashTable::table.
Referenced by initializeParsingCommon().