Go to the source code of this file.
| Functions | |
| static void * | fts2HashMalloc (int n) | 
| static void | fts2HashFree (void *p) | 
| void | sqlite3Fts2HashInit (fts2Hash *pNew, int keyClass, int copyKey) | 
| void | sqlite3Fts2HashClear (fts2Hash *pH) | 
| static int | strHash (const void *pKey, int nKey) | 
| static int | strCompare (const void *pKey1, int n1, const void *pKey2, int n2) | 
| static int | binHash (const void *pKey, int nKey) | 
| static int | binCompare (const void *pKey1, int n1, const void *pKey2, int n2) | 
| static int(*)(const void *, int) | hashFunction (int keyClass) | 
| static int(*)(const void *, int, const void *, int) | compareFunction (int keyClass) | 
| static void | insertElement (fts2Hash *pH, struct _fts2ht *pEntry, fts2HashElem *pNew) | 
| static void | rehash (fts2Hash *pH, int new_size) | 
| static fts2HashElem * | findElementGivenHash (const fts2Hash *pH, const void *pKey, int nKey, int h) | 
| static void | removeElementGivenHash (fts2Hash *pH, fts2HashElem *elem, int h) | 
| void * | sqlite3Fts2HashFind (const fts2Hash *pH, const void *pKey, int nKey) | 
| void * | sqlite3Fts2HashInsert (fts2Hash *pH, const void *pKey, int nKey, void *data) | 
| static int binCompare | ( | const void * | pKey1, | |
| int | n1, | |||
| const void * | pKey2, | |||
| int | n2 | |||
| ) |  [static] | 
Definition at line 123 of file fts2_hash.c.
Referenced by compareFunction().
| static int binHash | ( | const void * | pKey, | |
| int | nKey | |||
| ) |  [static] | 
Definition at line 115 of file fts2_hash.c.
Referenced by hashFunction().
| static int(*)(const void*, int, const void*, int) compareFunction | ( | int | keyClass | ) |  [static] | 
Definition at line 155 of file fts2_hash.c.
References binCompare(), FTS2_HASH_BINARY, FTS2_HASH_STRING, and strCompare().
Referenced by findElementGivenHash().
| static fts2HashElem* findElementGivenHash | ( | const fts2Hash * | pH, | |
| const void * | pKey, | |||
| int | nKey, | |||
| int | h | |||
| ) |  [static] | 
Definition at line 217 of file fts2_hash.c.
References compareFunction(), fts2Hash::ht, fts2Hash::keyClass, fts2HashElem::next, fts2HashElem::nKey, and fts2HashElem::pKey.
Referenced by sqlite3Fts2HashFind(), and sqlite3Fts2HashInsert().
| static void fts2HashFree | ( | void * | p | ) |  [static] | 
Definition at line 45 of file fts2_hash.c.
References sqlite3_free().
Referenced by rehash(), removeElementGivenHash(), sqlite3Fts2HashClear(), and sqlite3Fts2HashInsert().
| static void* fts2HashMalloc | ( | int | n | ) |  [static] | 
Definition at line 38 of file fts2_hash.c.
References sqlite3_malloc().
Referenced by rehash(), and sqlite3Fts2HashInsert().
| static int(*)(const void*, int) hashFunction | ( | int | keyClass | ) |  [static] | 
Definition at line 140 of file fts2_hash.c.
References binHash(), FTS2_HASH_BINARY, FTS2_HASH_STRING, and strHash().
Referenced by rehash(), sqlite3Fts2HashFind(), and sqlite3Fts2HashInsert().
| static void insertElement | ( | fts2Hash * | pH, | |
| struct _fts2ht * | pEntry, | |||
| fts2HashElem * | pNew | |||
| ) |  [static] | 
Definition at line 166 of file fts2_hash.c.
References fts2Hash::first, fts2HashElem::next, and fts2HashElem::prev.
Referenced by rehash(), and sqlite3Fts2HashInsert().
| static void rehash | ( | fts2Hash * | pH, | |
| int | new_size | |||
| ) |  [static] | 
Definition at line 194 of file fts2_hash.c.
References fts2Hash::first, fts2HashFree(), fts2HashMalloc(), hashFunction(), fts2Hash::ht, fts2Hash::htsize, insertElement(), fts2Hash::keyClass, fts2HashElem::next, fts2HashElem::nKey, and fts2HashElem::pKey.
Referenced by sqlite3Fts2HashInsert().
| static void removeElementGivenHash | ( | fts2Hash * | pH, | |
| fts2HashElem * | elem, | |||
| int | h | |||
| ) |  [static] | 
Definition at line 245 of file fts2_hash.c.
References fts2Hash::_fts2ht::chain, fts2Hash::copyKey, fts2Hash::count, fts2Hash::first, fts2HashClear, fts2HashFree(), fts2Hash::ht, fts2HashElem::next, fts2HashElem::pKey, and fts2HashElem::prev.
Referenced by sqlite3Fts2HashInsert().
| void sqlite3Fts2HashClear | ( | fts2Hash * | pH | ) | 
Definition at line 74 of file fts2_hash.c.
References fts2Hash::copyKey, fts2Hash::count, fts2Hash::first, fts2HashFree(), fts2Hash::ht, fts2Hash::htsize, fts2HashElem::next, and fts2HashElem::pKey.
Referenced by hashDestroy(), and sqlite3Fts2Init().
| void* sqlite3Fts2HashFind | ( | const fts2Hash * | pH, | |
| const void * | pKey, | |||
| int | nKey | |||
| ) | 
Definition at line 283 of file fts2_hash.c.
References fts2HashElem::data, findElementGivenHash(), hashFunction(), fts2Hash::ht, fts2Hash::htsize, and fts2Hash::keyClass.
Referenced by constructVtab(), and scalarFunc().
| void sqlite3Fts2HashInit | ( | fts2Hash * | pNew, | |
| int | keyClass, | |||
| int | copyKey | |||
| ) | 
Definition at line 59 of file fts2_hash.c.
References fts2Hash::copyKey, fts2Hash::count, fts2Hash::first, FTS2_HASH_BINARY, FTS2_HASH_STRING, fts2Hash::ht, fts2Hash::htsize, and fts2Hash::keyClass.
Referenced by sqlite3Fts2Init().
| void* sqlite3Fts2HashInsert | ( | fts2Hash * | pH, | |
| const void * | pKey, | |||
| int | nKey, | |||
| void * | data | |||
| ) | 
Definition at line 312 of file fts2_hash.c.
References fts2Hash::copyKey, fts2Hash::count, fts2HashElem::data, findElementGivenHash(), fts2HashFree(), fts2HashMalloc(), hashFunction(), fts2Hash::ht, fts2Hash::htsize, insertElement(), fts2Hash::keyClass, fts2HashElem::nKey, fts2HashElem::pKey, rehash(), and removeElementGivenHash().
Referenced by scalarFunc(), and sqlite3Fts2Init().
| static int strCompare | ( | const void * | pKey1, | |
| int | n1, | |||
| const void * | pKey2, | |||
| int | n2 | |||
| ) |  [static] | 
Definition at line 107 of file fts2_hash.c.
Referenced by compareFunction().
| static int strHash | ( | const void * | pKey, | |
| int | nKey | |||
| ) |  [static] | 
Definition at line 97 of file fts2_hash.c.
Referenced by hashFunction().
ContextLogger2—ContextLogger2 Logger Daemon Internals—Generated on Mon May 2 13:49:59 2011 by Doxygen 1.6.1