A linked page based hash-table implementation used internally by Value. More...
#include <value.h>
Classes | |
struct | IteratorState |
Public Types | |
typedef unsigned int | HashKey |
typedef unsigned int | BucketIndex |
Public Member Functions | |
ValueInternalMap () | |
ValueInternalMap (const ValueInternalMap &other) | |
ValueInternalMap & | operator= (const ValueInternalMap &other) |
~ValueInternalMap () | |
void | swap (ValueInternalMap &other) |
BucketIndex | size () const |
void | clear () |
bool | reserveDelta (BucketIndex growth) |
bool | reserve (BucketIndex newItemCount) |
const Value * | find (const char *key) const |
Value * | find (const char *key) |
Value & | resolveReference (const char *key, bool isStatic) |
void | remove (const char *key) |
void | doActualRemove (ValueInternalLink *link, BucketIndex index, BucketIndex bucketIndex) |
ValueInternalLink *& | getLastLinkInBucket (BucketIndex bucketIndex) |
Value & | setNewItem (const char *key, bool isStatic, ValueInternalLink *link, BucketIndex index) |
Value & | unsafeAdd (const char *key, bool isStatic, HashKey hashedKey) |
HashKey | hash (const char *key) const |
int | compare (const ValueInternalMap &other) const |
Friends | |
class | ValueIteratorBase |
class | Value |
A linked page based hash-table implementation used internally by Value.
typedef unsigned int Json::ValueInternalMap::HashKey |
typedef unsigned int Json::ValueInternalMap::BucketIndex |
Json::ValueInternalMap::ValueInternalMap | ( | ) |
Json::ValueInternalMap::ValueInternalMap | ( | const ValueInternalMap & | other | ) |
Json::ValueInternalMap::~ValueInternalMap | ( | ) |
ValueInternalMap & Json::ValueInternalMap::operator= | ( | const ValueInternalMap & | other | ) |
void Json::ValueInternalMap::swap | ( | ValueInternalMap & | other | ) |
ValueInternalMap::BucketIndex Json::ValueInternalMap::size | ( | ) | const |
void Json::ValueInternalMap::clear | ( | ) |
bool Json::ValueInternalMap::reserveDelta | ( | BucketIndex | growth | ) |
bool Json::ValueInternalMap::reserve | ( | BucketIndex | newItemCount | ) |
const Value * Json::ValueInternalMap::find | ( | const char * | key | ) | const |
Value * Json::ValueInternalMap::find | ( | const char * | key | ) |
Value & Json::ValueInternalMap::resolveReference | ( | const char * | key, | |
bool | isStatic | |||
) |
void Json::ValueInternalMap::remove | ( | const char * | key | ) |
void Json::ValueInternalMap::doActualRemove | ( | ValueInternalLink * | link, | |
BucketIndex | index, | |||
BucketIndex | bucketIndex | |||
) |
ValueInternalLink *& Json::ValueInternalMap::getLastLinkInBucket | ( | BucketIndex | bucketIndex | ) |
Value & Json::ValueInternalMap::setNewItem | ( | const char * | key, | |
bool | isStatic, | |||
ValueInternalLink * | link, | |||
BucketIndex | index | |||
) |
ValueInternalMap::HashKey Json::ValueInternalMap::hash | ( | const char * | key | ) | const |
int Json::ValueInternalMap::compare | ( | const ValueInternalMap & | other | ) | const |
friend class ValueIteratorBase [friend] |
friend class Value [friend] |