]>
Commit | Line | Data |
---|---|---|
1 | #ifndef SPLIT_INDEX_H | |
2 | #define SPLIT_INDEX_H | |
3 | ||
4 | #include "cache.h" | |
5 | ||
6 | struct index_state; | |
7 | struct strbuf; | |
8 | struct ewah_bitmap; | |
9 | ||
10 | struct split_index { | |
11 | struct object_id base_oid; | |
12 | struct index_state *base; | |
13 | struct ewah_bitmap *delete_bitmap; | |
14 | struct ewah_bitmap *replace_bitmap; | |
15 | struct cache_entry **saved_cache; | |
16 | unsigned int saved_cache_nr; | |
17 | unsigned int nr_deletions; | |
18 | unsigned int nr_replacements; | |
19 | int refcount; | |
20 | }; | |
21 | ||
22 | struct split_index *init_split_index(struct index_state *istate); | |
23 | void save_or_free_index_entry(struct index_state *istate, struct cache_entry *ce); | |
24 | void replace_index_entry_in_base(struct index_state *istate, | |
25 | struct cache_entry *old, | |
26 | struct cache_entry *new_entry); | |
27 | int read_link_extension(struct index_state *istate, | |
28 | const void *data, unsigned long sz); | |
29 | int write_link_extension(struct strbuf *sb, | |
30 | struct index_state *istate); | |
31 | void move_cache_to_base_index(struct index_state *istate); | |
32 | void merge_base_index(struct index_state *istate); | |
33 | void prepare_to_write_split_index(struct index_state *istate); | |
34 | void finish_writing_split_index(struct index_state *istate); | |
35 | void discard_split_index(struct index_state *istate); | |
36 | void add_split_index(struct index_state *istate); | |
37 | void remove_split_index(struct index_state *istate); | |
38 | ||
39 | #endif |