mail-index-sync-private.h revision 6aa38bc4f4d4626a4a79abb59a9d415e4bd9b6b5
#ifndef __MAIL_INDEX_SYNC_PRIVATE_H
#define __MAIL_INDEX_SYNC_PRIVATE_H
#include "mail-transaction-log.h"
struct mail_index_sync_ctx {
struct mail_index *index;
struct mail_index_view *view;
struct mail_index_transaction *trans;
const struct mail_transaction_expunge *expunges;
const struct mail_transaction_flag_update *updates;
const struct mail_transaction_header *hdr;
const void *data;
unsigned int lock_id;
unsigned int sync_appends:1;
unsigned int sync_recent:1;
unsigned int sync_dirty:1;
};
struct mail_index_expunge_handler {
void **context;
};
struct mail_index_sync_map_ctx {
struct mail_index_view *view;
void **extra_context;
unsigned int sync_handlers_initialized:1;
unsigned int expunge_handlers_set:1;
unsigned int expunge_handlers_used:1;
unsigned int cur_ext_ignore:1;
unsigned int keywords_read:1;
};
extern struct mail_transaction_map_functions mail_index_map_sync_funcs;
struct mail_index_view *view,
enum mail_index_sync_handler_type type);
int sync_only_external);
const struct mail_transaction_header *hdr,
const void *data);
struct mail_index_map *map);
void
const struct mail_transaction_expunge *exp);
void
const struct mail_transaction_flag_update *update);
void
const struct mail_transaction_ext_intro *u);
const struct mail_transaction_ext_reset *u);
int
const struct mail_transaction_ext_hdr_update *u);
int
const struct mail_transaction_ext_rec_update *u);
const struct mail_transaction_header *hdr,
const struct mail_transaction_keyword_update *rec);
#endif