{{ size = {my_size} }} this->capacity() my_segment_table_allocator segment_index = segment_index_type(__log2(1 | index)) my_segment_table._Storage._Value[segment_index]._Storage._Value[index] index += 1 {{ size = {my_size} }} my_hash_compare.my_hasher my_hash_compare.my_equal my_segments.my_segment_table_allocator ((value_node_type*)(node_ptr))->my_value node_ptr = node_ptr->my_next._Storage._Value {{ size = {my_size} }} my_compare my_node_allocator node_ptr->my_value node_ptr = (*(atomic_node_ptr*)(node_ptr + 1))._Storage._Value {{ size= {my_size} }} my_hash_compare my_allocator ++bucket_ptr segment_index = (segment_index_type)(__log2(k | 1)) segment_base = (segment_index_type(1) << segment_index & ~segment_index_type(1)) bucket_ptr = &my_table[segment_index]._Storage._Value[k - segment_base] node_ptr = bucket_ptr->node_list._Storage._Value k += 1 ((node*)(node_ptr))->my_value node_ptr = node_ptr->next ++bucket_ptr segment_index = (segment_index_type)(__log2(k | 1)) segment_base = (segment_index_type(1) << segment_index & ~segment_index_type(1)) bucket_ptr = &my_table[segment_index]._Storage._Value[k - segment_base] node_ptr = bucket_ptr->node_list._Storage._Value k += 1 {{ size = { this->max(0, my_queue_representation->tail_counter._Storage._Value - my_queue_representation->head_counter._Storage._Value - my_queue_representation->n_invalid_entries._Storage._Value) } }} my_allocator micro_queue_index = this->get_micro_queue_index(index) index_in_the_page = this->get_item_index_in_the_page(index) page_ptr = my_queue_representation->array[micro_queue_index].head_page._Storage._Value processing_page_index += 1 page_ptr = page_ptr->next local_page_index += 1 local_page_index = 0 page_ptr->items[index_in_the_page] index += 1