mail-index-view-private.h revision b0be0bead3d6963149f7f2a9504b8ab5aced9af5
fc71e94957d0c2959a609450a2f303640d681858Sascha Wilde unsigned int length;
fc464e5b2b2ab4d415a5d5b90ce4475d34620a75Timo SirainenARRAY_DEFINE_TYPE(view_log_sync_area, struct mail_index_view_log_sync_area);
fc71e94957d0c2959a609450a2f303640d681858Sascha Wilde uint32_t (*get_messages_count)(struct mail_index_view *view);
fc71e94957d0c2959a609450a2f303640d681858Sascha Wilde int (*lookup_full)(struct mail_index_view *view, uint32_t seq,
aba994a4e79a020b4748e0ceffc194e5a18e1d1aTimo Sirainen int (*lookup_uid)(struct mail_index_view *view, uint32_t seq,
aba994a4e79a020b4748e0ceffc194e5a18e1d1aTimo Sirainen int (*lookup_uid_range)(struct mail_index_view *view,
fc71e94957d0c2959a609450a2f303640d681858Sascha Wilde int (*lookup_first)(struct mail_index_view *view, enum mail_flags flags,
4b1359bde7d32667197548652a4b4f540062e2acTimo Sirainen int (*lookup_ext_full)(struct mail_index_view *view, uint32_t seq,
64bfe7b4a42512971db154937905dfa2bdb9cf2cTimo Sirainen uint32_t ext_id, struct mail_index_map **map_r,
aba994a4e79a020b4748e0ceffc194e5a18e1d1aTimo Sirainen const void **data_r);
c5a6a6565be93224fc26522eda855b0990f256e8Timo Sirainen int (*get_header_ext)(struct mail_index_view *view,
aba994a4e79a020b4748e0ceffc194e5a18e1d1aTimo Sirainen unsigned int indexid;
aba994a4e79a020b4748e0ceffc194e5a18e1d1aTimo Sirainen /* After syncing view, map is replaced with sync_new_map. */
fc71e94957d0c2959a609450a2f303640d681858Sascha Wilde /* All mappings where we have returned records. They need to be kept
9f10cc61ec303351b43e54155c86699ef53cb8beTimo Sirainen valid until view is synchronized. */
fc464e5b2b2ab4d415a5d5b90ce4475d34620a75Timo Sirainen ARRAY_DEFINE(map_refs, struct mail_index_map *);
fc464e5b2b2ab4d415a5d5b90ce4475d34620a75Timo Sirainen /* expunge <= head */
fc464e5b2b2ab4d415a5d5b90ce4475d34620a75Timo Sirainen uint32_t log_file_expunge_seq, log_file_head_seq;
fc464e5b2b2ab4d415a5d5b90ce4475d34620a75Timo Sirainen uoff_t log_file_expunge_offset, log_file_head_offset;
fc464e5b2b2ab4d415a5d5b90ce4475d34620a75Timo Sirainen /* Transaction log offsets which we don't want to return in view sync */
4b1359bde7d32667197548652a4b4f540062e2acTimo Sirainen /* Module-specific contexts. */
4b1359bde7d32667197548652a4b4f540062e2acTimo Sirainen ARRAY_DEFINE(module_contexts, union mail_index_view_module_context *);
4b1359bde7d32667197548652a4b4f540062e2acTimo Sirainen unsigned int lock_id;
64bfe7b4a42512971db154937905dfa2bdb9cf2cTimo Sirainen /* this view was created by mail_index_sync_begin() */
64bfe7b4a42512971db154937905dfa2bdb9cf2cTimo Sirainen /* this view is being synced */
64bfe7b4a42512971db154937905dfa2bdb9cf2cTimo Sirainenmail_index_view_open_with_map(struct mail_index_map *map);
aba994a4e79a020b4748e0ceffc194e5a18e1d1aTimo Sirainenvoid mail_index_view_clone(struct mail_index_view *dest,
c5a6a6565be93224fc26522eda855b0990f256e8Timo Sirainenvoid mail_index_view_ref(struct mail_index_view *view);
4b1359bde7d32667197548652a4b4f540062e2acTimo Sirainenint mail_index_view_lock(struct mail_index_view *view);
fc71e94957d0c2959a609450a2f303640d681858Sascha Wildeint mail_index_view_lock_head(struct mail_index_view *view);
fc71e94957d0c2959a609450a2f303640d681858Sascha Wildevoid mail_index_view_unref_maps(struct mail_index_view *view);
fc71e94957d0c2959a609450a2f303640d681858Sascha Wildevoid mail_index_view_add_hidden_transaction(struct mail_index_view *view,
fc71e94957d0c2959a609450a2f303640d681858Sascha Wilde unsigned int length);