MCPcopy Create free account
hub / github.com/beefytech/Beef / Rehash

Function Rehash

IDEHelper/StrHashMap.h:134–154  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

132 }
133
134 void Rehash(int newHashSize)
135 {
136 auto newHashHeads = (Entry**)mAlloc.AllocBytes(sizeof(Entry*) * newHashSize, alignof(Entry*));
137
138 for (int hashIdx = 0; hashIdx < mHashSize; hashIdx++)
139 {
140 Entry* checkEntry = mHashHeads[hashIdx];
141 while (checkEntry != NULL)
142 {
143 auto nextEntry = checkEntry->mNext;
144 int newHashIdx = checkEntry->mHash % newHashSize;
145 checkEntry->mNext = newHashHeads[newHashIdx];
146 newHashHeads[newHashIdx] = checkEntry;
147
148 checkEntry = nextEntry;
149 }
150 }
151
152 mHashHeads = newHashHeads;
153 mHashSize = newHashSize;
154 }
155
156 Entry* Find(const char* name)
157 {

Callers 2

FindFunction · 0.85
BfResolvedTypeSetMethod · 0.85

Calls 1

AllocBytesMethod · 0.45

Tested by

no test coverage detected