34 void linkAndReserve(
const QLinkedStringHash<T> &other,
int additionalReserve)
39 data.size = other.data.size;
40 data.rehashToSize(other.count() + additionalReserve);
42 if (data.numBuckets == other.data.numBuckets) {
43 nodePool =
new ReservedNodePool;
44 nodePool->count = additionalReserve;
46 nodePool->nodes =
new Node[additionalReserve];
48 for (
int ii = 0; ii < data.numBuckets; ++ii)
49 data.buckets[ii] = (Node *)other.data.buckets[ii];
58 data.numBits = other.data.numBits;
59 reserve(other.count() + additionalReserve);
129 inline ConstIterator iterator(Node *n)
const
132 return ConstIterator();
134 const QLinkedStringHash<T> *container =
this;
138 if ((n >= nodePool->nodes) && (n < (nodePool->nodes + nodePool->used))) {
140 }
else if ((n >= link->nodePool->nodes)
141 && (n < (link->nodePool->nodes + link->nodePool->used))) {
145 const NewedNode *ln = link->newedNodes;
158 ConstIteratorData rv;
161 return ConstIterator(rv);