MCPcopy Create free account
hub / github.com/boostorg/build / string_set_resize

Function string_set_resize

v2/engine/object.c:171–193  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

169
170
171static void string_set_resize( string_set * set )
172{
173 unsigned i;
174 string_set new_set;
175 new_set.num = set->num * 2;
176 new_set.size = set->size;
177 new_set.data = (struct hash_item * *)BJAM_MALLOC( sizeof( struct hash_item *
178 ) * new_set.num );
179 memset( new_set.data, 0, sizeof( struct hash_item * ) * new_set.num );
180 for ( i = 0; i < set->num; ++i )
181 {
182 while ( set->data[ i ] )
183 {
184 struct hash_item * temp = set->data[ i ];
185 unsigned pos = temp->header.hash % new_set.num;
186 set->data[ i ] = temp->header.next;
187 temp->header.next = new_set.data[ pos ];
188 new_set.data[ pos ] = temp;
189 }
190 }
191 BJAM_FREE( set->data );
192 *set = new_set;
193}
194
195
196static char const * string_set_insert( string_set * set, char const * string,

Callers 1

string_set_insertFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected