Go to the source code of this file.
Functions | |
void | sqlite3HashInit (Hash *pNew, int copyKey) |
void | sqlite3HashClear (Hash *pH) |
static int | strHash (const void *pKey, int nKey) |
static int | strCompare (const void *pKey1, int n1, const void *pKey2, int n2) |
static void | insertElement (Hash *pH, struct _ht *pEntry, HashElem *pNew) |
static void | rehash (Hash *pH, int new_size) |
static HashElem * | findElementGivenHash (const Hash *pH, const void *pKey, int nKey, int h) |
static void | removeElementGivenHash (Hash *pH, HashElem *elem, int h) |
HashElem * | sqlite3HashFindElem (const Hash *pH, const void *pKey, int nKey) |
void * | sqlite3HashFind (const Hash *pH, const void *pKey, int nKey) |
void * | sqlite3HashInsert (Hash *pH, const void *pKey, int nKey, void *data) |
static HashElem* findElementGivenHash | ( | const Hash * | pH, | |
const void * | pKey, | |||
int | nKey, | |||
int | h | |||
) | [static] |
Definition at line 144 of file hash.c.
References Hash::ht, HashElem::next, HashElem::nKey, HashElem::pKey, and strCompare().
Referenced by sqlite3HashFindElem(), and sqlite3HashInsert().
Definition at line 81 of file hash.c.
References Hash::first, HashElem::next, and HashElem::prev.
Referenced by rehash(), and sqlite3HashInsert().
static void rehash | ( | Hash * | pH, | |
int | new_size | |||
) | [static] |
Definition at line 109 of file hash.c.
References Hash::first, Hash::ht, Hash::htsize, insertElement(), HashElem::next, HashElem::nKey, HashElem::pKey, sqlite3_free(), sqlite3BeginBenignMalloc(), sqlite3EndBenignMalloc(), sqlite3MallocZero(), and strHash().
Referenced by sqlite3HashInsert().
Definition at line 170 of file hash.c.
References Hash::_ht::chain, Hash::copyKey, Hash::count, Hash::first, Hash::ht, HashElem::next, HashElem::pKey, HashElem::prev, sqlite3_free(), and sqlite3HashClear().
Referenced by sqlite3HashInsert().
void sqlite3HashClear | ( | Hash * | pH | ) |
Definition at line 40 of file hash.c.
References Hash::copyKey, Hash::count, Hash::first, Hash::ht, Hash::htsize, HashElem::next, HashElem::pKey, and sqlite3_free().
Referenced by removeElementGivenHash(), sqlite3_close(), and sqlite3SchemaFree().
void* sqlite3HashFind | ( | const Hash * | pH, | |
const void * | pKey, | |||
int | nKey | |||
) |
Definition at line 223 of file hash.c.
References HashElem::data, and sqlite3HashFindElem().
Referenced by createCollation(), findCollSeqEntry(), sqlite3BeginTrigger(), sqlite3DeleteTable(), sqlite3DropTrigger(), sqlite3EndTable(), sqlite3FindIndex(), sqlite3FindTable(), sqlite3FinishTrigger(), sqlite3UnlinkAndDeleteTable(), sqlite3VtabFinishParse(), and tableOfTrigger().
Definition at line 209 of file hash.c.
References findElementGivenHash(), Hash::ht, Hash::htsize, and strHash().
Referenced by sqlite3HashFind().
void sqlite3HashInit | ( | Hash * | pNew, | |
int | copyKey | |||
) |
Definition at line 27 of file hash.c.
References Hash::copyKey, Hash::count, Hash::first, Hash::ht, and Hash::htsize.
Referenced by openDatabase(), sqlite3SchemaFree(), and sqlite3SchemaGet().
void* sqlite3HashInsert | ( | Hash * | pH, | |
const void * | pKey, | |||
int | nKey, | |||
void * | data | |||
) |
Definition at line 244 of file hash.c.
References Hash::copyKey, Hash::count, HashElem::data, findElementGivenHash(), Hash::ht, Hash::htsize, insertElement(), HashElem::nKey, HashElem::pKey, rehash(), removeElementGivenHash(), sqlite3_free(), sqlite3Malloc(), and strHash().
Referenced by createModule(), findCollSeqEntry(), sqlite3CreateIndex(), sqlite3EndTable(), sqlite3FinishTrigger(), sqlite3UnlinkAndDeleteIndex(), sqlite3UnlinkAndDeleteTable(), sqlite3UnlinkAndDeleteTrigger(), sqlite3VtabFinishParse(), and sqliteDeleteIndex().
static int strCompare | ( | const void * | pKey1, | |
int | n1, | |||
const void * | pKey2, | |||
int | n2 | |||
) | [static] |
Definition at line 73 of file hash.c.
References sqlite3StrNICmp().
Referenced by findElementGivenHash().
static int strHash | ( | const void * | pKey, | |
int | nKey | |||
) | [static] |
Definition at line 63 of file hash.c.
References sqlite3UpperToLower.
Referenced by rehash(), sqlite3HashFindElem(), and sqlite3HashInsert().
ContextLogger2—ContextLogger2 Logger Daemon Internals—Generated on Mon May 2 13:49:59 2011 by Doxygen 1.6.1