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

Function string_set_resize

src/engine/object.c:172–194  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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