Lines Matching full:bucket
64 // Okay, we know we have space. Find a hash bucket.
65 const void **Bucket = const_cast<const void**>(FindBucketFor(Ptr));
66 if (*Bucket == Ptr) return false; // Already inserted, good.
69 if (*Bucket == getTombstoneMarker())
71 *Bucket = Ptr;
92 // Okay, we know we have space. Find a hash bucket.
93 void **Bucket = const_cast<void**>(FindBucketFor(Ptr));
94 if (*Bucket != Ptr) return false; // Not in the set?
97 *Bucket = getTombstoneMarker();
104 unsigned Bucket = Hash(Ptr);
110 // Found Ptr's bucket?
111 if (Array[Bucket] == Ptr)
112 return Array+Bucket;
114 // If we found an empty bucket, the pointer doesn't exist in the set.
115 // Return a tombstone if we've seen one so far, or the empty bucket if
117 if (Array[Bucket] == getEmptyMarker())
118 return Tombstone ? Tombstone : Array+Bucket;
122 if (Array[Bucket] == getTombstoneMarker() && !Tombstone)
123 Tombstone = Array+Bucket; // Remember the first tombstone found.
126 Bucket = (Bucket + ProbeAmt++) & (ArraySize-1);