Lines Matching defs:recs
33 ARRAY_TYPE(mail_index_strmap_rec) recs;
202 i_array_init(&view->recs, 64);
207 *recs_r = &view->recs;
217 array_free(&view->recs);
231 array_clear(&view->recs);
695 array_append(&ctx->view->recs, &ctx->rec, 1);
783 array_append(&view->recs, rec, 1);
804 array_append(&view->recs, &rec, 1);
815 array_append_zero(&view->recs);
816 array_delete(&view->recs, array_count(&view->recs)-1, 1);
822 struct mail_index_strmap_rec *recs, *hash_rec;
835 recs = array_get_modifiable(&view->recs, &count);
840 if (prev_uid != recs[i].uid) {
842 prev_uid = recs[i].uid;
849 } while (i < count && recs[i].uid == prev_uid);
854 i_assert(recs[i].str_idx < view->next_str_idx);
855 if (renumber_map[recs[i].str_idx] == 0)
856 renumber_map[recs[i].str_idx] = ++str_idx;
858 recs[dest] = recs[i];
864 array_delete(&view->recs, dest, i-dest);
874 recs = array_get_modifiable(&view->recs, &count);
877 recs[i].str_idx = renumber_map[recs[i].str_idx];
879 memcpy(hash_rec, &recs[i], sizeof(*hash_rec));
891 const struct mail_index_strmap_rec *recs;
904 recs = array_get(&view->recs, &count);
910 mail_index_pack_num(&p, recs[i].uid - base_uid);
911 base_uid = recs[i].uid;
916 if (recs[j].uid != base_uid)
924 i_assert(recs[i].ref_index == 0);
928 } else if (recs[i+1].ref_index == 1) {
935 i_assert(recs[i+1].ref_index == 2);
943 i_assert(j < 2 || recs[i+j].ref_index == j+1);
944 o_stream_nsend(output, &recs[i+j].str_idx,
945 sizeof(recs[i+j].str_idx));
963 i_assert(view->last_added_uid == recs[count-1].uid);
964 view->last_read_uid = recs[count-1].uid;
995 if (array_count(&view->recs) == 0) {
1118 (void)array_bsearch_insert_pos(&view->recs, &next_uid,
1121 old_recs = array_get(&view->recs, &old_count);
1241 array_append_zero(&view->recs);
1242 array_delete(&view->recs, array_count(&view->recs)-1, 1);