|
CCAFFEINE
0.8.8
|


Public Member Functions | |
| int | size () |
| boolean | isEmpty () |
| Enumeration * | keys () |
| Enumeration * | elements () |
| boolean | contains (Object *value) |
| boolean | containsKey (Object *key) |
| char ** | charKeysToArray (int &ka_length) |
| Object * | get (Object *key) |
| Object * | put (Object *key, Object *value) |
| Object * | remove (Object *key) |
| void | clear () |
| Object * | clone () |
| char * | toString () |
| boolean | containsValue (Object *o) |
Protected Member Functions | |
| void | rehash (int &rehashError) |
Private Member Functions | |
| int | calculateBucket (Object *key) |
Private Attributes | |
| HashBucket ** | table |
| int | table_length |
| float | loadFactor |
| int | numberOfKeys |
| int | rehashLimit |
| Object ** | okeys |
| Object ** | oelements |
| int | N |
| int | ttmNm2 |
| int | twoNm1 |
Static Private Attributes | |
| static const long | magic |
must call delete on this pointer when you are done with it.
must call delete on this pointer when you are done with it.
| char** jcpp::Hashtable::charKeysToArray | ( | int & | ka_length | ) |
If you want this functionality, you must use a StringHash. returns a 0 length list.
| Object* jcpp::Hashtable::clone | ( | ) | [inline] |
Creates a shallow copy of this hashtable. The keys and values themselves are not cloned.
{ return 0; }
| char* jcpp::Hashtable::toString | ( | ) |
delete this string when you are done with it.
const long jcpp::Hashtable::magic [static, private] |
unlike kaffe's rather goofy hash table implementation, we're stealing ascends/tcls hash on pointer.
int jcpp::Hashtable::N [private] |
shape factor of the table. must be even and <= 30
int jcpp::Hashtable::ttmNm2 [private] |
32 - N - 2, shift used to move sig. bits to low bits.
int jcpp::Hashtable::twoNm1 [private] |
2^N -1, mask of bits.
1.7.6.1