Cross Reference: /dovecot/src/lib-index/mail-index-view.c

Lines Matching refs:map

14 	struct mail_index_map *map;
19 map = mail_index_map_clone(view->map);
20 mail_index_unmap(&view->map);
21 view->map = map;
39 dest->map = src->map;
40 if (dest->map != NULL)
41 dest->map->refcount++;
70 mail_index_unmap(&view->map);
113 struct mail_index_map *map)
121 /* if map is already referenced, do nothing */
123 if (maps[i] == map)
132 map->refcount++;
133 array_append(&view->map_refs, &map, 1);
153 return view->map->hdr.messages_count;
159 return &view->map->hdr;
167 struct mail_index_map *map;
173 rec = MAIL_INDEX_REC_AT_SEQ(view->map, seq);
184 *map_r = view->map;
189 if (view->map == view->index->map) {
191 *map_r = view->map;
206 if (seq > view->index->map->hdr.messages_count)
207 seq = view->index->map->hdr.messages_count;
210 *map_r = view->map;
216 map = view->index->map;
218 head_rec = MAIL_INDEX_REC_AT_SEQ(map, seq);
226 mail_index_view_ref_map(view, view->index->map);
227 *map_r = view->index->map;
233 *map_r = view->map;
245 *uid_r = MAIL_INDEX_REC_AT_SEQ(view->map, seq)->uid;
252 mail_index_map_lookup_seq_range(view->map, first_uid, last_uid,
262 const struct mail_index_header *hdr = &view->map->hdr;
281 i_assert(hdr->messages_count <= view->map->rec_map->records_count);
283 rec = MAIL_INDEX_REC_AT_SEQ(view->map, seq);
292 mail_index_data_lookup_keywords(struct mail_index_map *map,
306 (void)mail_index_ext_get_size(map, map->index->keywords_ext_id,
311 if (!array_is_created(&map->keyword_idx_map))
314 keyword_idx_map = array_get(&map->keyword_idx_map, &keyword_count);
340 struct mail_index_map *map;
344 &map, &data, NULL);
345 mail_index_data_lookup_keywords(map, data, keyword_idx);
349 view_map_lookup_ext_full(struct mail_index_map *map,
355 if (!mail_index_map_get_ext_idx(map, ext_id, &idx))
358 ext = array_idx(&map->extensions, idx);
375 struct mail_index_map *map, uint32_t ext_id,
381 if (map == NULL) {
383 map = view->index->map;
386 if (!mail_index_map_get_ext_idx(map, ext_id, &idx)) {
393 ext = array_idx(&map->extensions, idx);
394 *data_r = CONST_PTR_OFFSET(map->hdr_base, ext->hdr_offset);
399 struct mail_index_map *map,
405 if (!mail_index_map_get_ext_idx(map, ext_id, &idx))
408 ext = array_idx(&map->extensions, idx);
440 struct mail_index_map *map;
442 return mail_index_lookup_full(view, seq, &map);
454 struct mail_index_map *map;
457 (void)view->v.lookup_full(view, seq, &map, &expunged);
461 void mail_index_map_lookup_keywords(struct mail_index_map *map, uint32_t seq,
469 if (!mail_index_map_get_ext_idx(map, map->index->keywords_ext_id, &idx))
472 rec = MAIL_INDEX_REC_AT_SEQ(map, seq);
473 ext = array_idx(&map->extensions, idx);
477 mail_index_data_lookup_keywords(map, data, keyword_idx);
495 rec = MAIL_INDEX_REC_AT_SEQ(view->map, seq);
498 keyword_data = view_map_lookup_ext_full(view->map, rec,
500 mail_index_data_lookup_keywords(view->map, keyword_data, keyword_idx);
536 struct mail_index_map *map;
538 mail_index_lookup_ext_full(view, seq, ext_id, &map, data_r, expunged_r);
555 struct mail_index_map *map, uint32_t ext_id,
558 view->v.get_header_ext(view, map, ext_id, data_r, data_size_r);
562 struct mail_index_map *map,
565 return view->v.ext_get_reset_id(view, map, ext_id, reset_id_r);
568 void mail_index_ext_get_size(struct mail_index_map *map, uint32_t ext_id,
575 i_assert(map != NULL);
577 if (!mail_index_map_get_ext_idx(map, ext_id, &idx)) {
585 ext = array_idx(&map->extensions, idx);
607 struct mail_index_map *map)
619 view->map = map;
620 view->map->refcount++;
623 view->map->hdr.log_file_seq;
625 view->map->hdr.log_file_head_offset;
640 view = mail_index_view_open_with_map(index, index->map);
652 if (!mail_index_map_get_ext_idx(view->map, ext_id, &idx))
655 return array_idx(&view->map->extensions, idx);