/ext-ds/src/ds/ |
H A D | ds_htable.c | 48 table->min_deleted = table->capacity; in ds_htable_rehash() 107 table->next = table->size; in ds_htable_pack() 108 table->min_deleted = table->capacity; in ds_htable_pack() 395 stop = &table->buckets[table->next]; in ds_htable_lookup_by_position() 490 table->min_deleted = table->capacity; in ds_htable_clear_buffer() 503 table->min_deleted = table->capacity; in ds_htable_clear() 614 if (table->next > table->size + (table->size >> 5)) { in ds_htable_increase_capacity() 646 DS_HTABLE_BUCKET_REHASH(table, next, table->capacity - 1, table->next); in ds_htable_put_distinct_bucket() 651 if (table->next == table->capacity) { in ds_htable_put_distinct_bucket() 665 DS_HTABLE_BUCKET_REHASH(table, bucket, table->capacity - 1, table->next); in ds_htable_init_next_bucket() [all …]
|
H A D | ds_map.c | 15 map->table = table; in ds_map_ex() 37 return map->table->capacity; in ds_map_capacity() 67 ds_htable_t *table = ds_htable_map(map->table, FCI_ARGS); in ds_map_map() local 69 if (table) { in ds_map_map() 70 return ds_map_ex(table); in ds_map_map() 83 ds_htable_t *table = ds_htable_filter_callback(map->table, FCI_ARGS); in ds_map_filter_callback() local 85 if (table) { in ds_map_filter_callback() 229 return ds_map_ex(ds_htable_xor(map->table, other->table)); in ds_map_xor() 234 return ds_map_ex(ds_htable_diff(map->table, other->table)); in ds_map_diff() 239 return ds_map_ex(ds_htable_intersect(map->table, other->table)); in ds_map_intersect() [all …]
|
H A D | ds_htable.h | 162 zval *ds_htable_values(ds_htable_t *table); 167 void ds_htable_sort_by_key(ds_htable_t *table); 168 void ds_htable_sort_by_value(ds_htable_t *table); 169 void ds_htable_sort_by_pair(ds_htable_t *table); 170 void ds_htable_sort_callback_by_key(ds_htable_t *table); 179 bool ds_htable_has_key(ds_htable_t *table, zval *key); 195 void ds_htable_reverse(ds_htable_t *table); 196 ds_htable_t *ds_htable_reversed(ds_htable_t *table); 199 ds_htable_bucket_t *ds_htable_last(ds_htable_t *table); 202 ds_htable_t *ds_htable_filter(ds_htable_t *table); [all …]
|
H A D | ds_set.c | 10 ds_set_t *ds_set_ex(ds_htable_t *table) in ds_set_ex() argument 13 set->table = table; in ds_set_ex() 39 ds_htable_sort_by_key(set->table); in ds_set_sort() 58 ds_htable_put(set->table, value, NULL); in ds_set_add() 179 return ds_set_ex(ds_htable_diff(set->table, other->table)); in ds_set_diff() 193 return ds_set_ex(ds_htable_intersect(set->table, other->table)); in ds_set_intersect() 210 return ds_set_ex(ds_htable_xor(set->table, other->table)); in ds_set_xor() 233 return ds_set_ex(ds_htable_merge(set->table, other->table)); in ds_set_union() 259 ds_htable_clear(set->table); in ds_set_clear() 264 ds_htable_free(set->table); in ds_set_free() [all …]
|
H A D | ds_set.h | 7 #define DS_SET_SIZE(s) ((s)->table->size) 8 #define DS_SET_CAPACITY(s) ((s)->table->capacity) 11 #define DS_SET_FOREACH(set, value) DS_HTABLE_FOREACH_KEY(set->table, value) 15 ds_htable_t *table; member 19 ds_set_t *ds_set_ex(ds_htable_t *table);
|
H A D | ds_map.h | 9 ds_htable_t *table; member 12 #define DS_MAP_SIZE(m) ((m)->table->size)
|
/ext-ds/src/php/iterators/ |
H A D | php_htable_iterator.c | 8 ds_htable_bucket_t *bucket = table->buckets; in find_starting_bucket() 10 if (table->size != 0) { in find_starting_bucket() 11 ds_htable_bucket_t *last = table->buckets + table->capacity; in find_starting_bucket() 32 uint32_t size = iterator->table->size; in php_ds_htable_iterator_valid() 107 if (++iterator->position < iterator->table->size) { in php_ds_htable_iterator_move_forward() 161 ds_htable_t *table, in php_ds_htable_create_htable_iterator() argument 179 iterator->table = table; in php_ds_htable_create_htable_iterator() 197 ds_htable_t *table in php_ds_htable_get_value_iterator_ex() argument 207 ds_htable_t *table in php_ds_htable_get_key_iterator_ex() argument 217 ds_htable_t *table in php_ds_htable_get_pair_iterator_ex() argument [all …]
|
H A D | php_set_iterator.c | 12 ds_htable_t *table = (Z_DS_SET_P(obj))->table; in php_ds_set_get_iterator() local 13 return php_ds_htable_get_key_iterator_ex(ce, obj, by_ref, table); in php_ds_set_get_iterator()
|
H A D | php_map_iterator.c | 12 ds_htable_t *table = Z_DS_MAP_P(obj)->table; in php_ds_map_get_iterator() local 13 return php_ds_htable_get_assoc_iterator_ex(ce, obj, by_ref, table); in php_ds_map_get_iterator()
|
H A D | php_htable_iterator.h | 12 ds_htable_t *table; member
|
/ext-ds/src/php/objects/ |
H A D | php_map.c | 42 DS_HTABLE_FOREACH_KEY_VALUE(map->table, key, value) { in ds_map_pairs_to_php_hashtable() 59 DS_HTABLE_FOREACH_KEY_VALUE(map->table, key, value) { in ds_map_pairs() 69 return ds_htable_serialize(Z_DS_MAP_P(object)->table, buffer, length, data); in php_ds_map_serialize() 76 if (ds_htable_unserialize(map->table, buffer, length, data) == FAILURE) { in php_ds_map_unserialize()
|
H A D | php_set.c | 37 if (set->table->size == 0) { in php_ds_set_serialize() 45 DS_HTABLE_FOREACH_KEY(set->table, key) { in php_ds_set_serialize()
|
/ext-ds/src/php/handlers/ |
H A D | php_map_handlers.c | 28 if ( ! ds_htable_isset(map->table, offset, 0)) { 59 ds_htable_put(map->table, offset, value); 71 return ds_htable_isset(map->table, offset, check_empty); 83 ds_htable_remove(map->table, offset, NULL); 140 *gc_data = (zval*) map->table->buckets; 141 *gc_size = (int) map->table->next * 2;
|
H A D | php_set_handlers.c | 103 *gc_data = (zval*) set->table->buckets; 104 *gc_count = (int) set->table->next * 2;
|
/ext-ds/src/php/classes/ |
H A D | php_map_ce.c | 145 RETURN_DS_SET(ds_set_ex(ds_htable_clone(THIS_DS_MAP()->table))); in METHOD() 296 RETURN_BOOL(ds_htable_isset(THIS_DS_MAP()->table, offset, false)); in METHOD()
|