]> git.ipfire.org Git - thirdparty/git.git/blame - split-index.h
config: add git_config_get_split_index()
[thirdparty/git.git] / split-index.h
CommitLineData
5fc2fc8f
NTND
1#ifndef SPLIT_INDEX_H
2#define SPLIT_INDEX_H
3
4struct index_state;
5struct strbuf;
96a1d8d3 6struct ewah_bitmap;
5fc2fc8f
NTND
7
8struct split_index {
9 unsigned char base_sha1[20];
10 struct index_state *base;
96a1d8d3
NTND
11 struct ewah_bitmap *delete_bitmap;
12 struct ewah_bitmap *replace_bitmap;
13 struct cache_entry **saved_cache;
5fc2fc8f 14 unsigned int saved_cache_nr;
76b07b37
NTND
15 unsigned int nr_deletions;
16 unsigned int nr_replacements;
5fc2fc8f
NTND
17 int refcount;
18};
19
20struct split_index *init_split_index(struct index_state *istate);
045113a5 21void save_or_free_index_entry(struct index_state *istate, struct cache_entry *ce);
078a58e8
NTND
22void replace_index_entry_in_base(struct index_state *istate,
23 struct cache_entry *old,
24 struct cache_entry *new);
5fc2fc8f
NTND
25int read_link_extension(struct index_state *istate,
26 const void *data, unsigned long sz);
27int write_link_extension(struct strbuf *sb,
28 struct index_state *istate);
29void move_cache_to_base_index(struct index_state *istate);
30void merge_base_index(struct index_state *istate);
31void prepare_to_write_split_index(struct index_state *istate);
32void finish_writing_split_index(struct index_state *istate);
33void discard_split_index(struct index_state *istate);
34
35#endif