]>
Commit | Line | Data |
---|---|---|
1 | #ifndef UNPACK_TREES_H | |
2 | #define UNPACK_TREES_H | |
3 | ||
4 | struct unpack_trees_options; | |
5 | ||
6 | typedef int (*merge_fn_t)(struct cache_entry **src, | |
7 | struct unpack_trees_options *options, | |
8 | int remove); | |
9 | ||
10 | struct unpack_trees_options { | |
11 | int reset; | |
12 | int merge; | |
13 | int update; | |
14 | int index_only; | |
15 | int nontrivial_merge; | |
16 | int trivial_merges_only; | |
17 | int verbose_update; | |
18 | int aggressive; | |
19 | const char *prefix; | |
20 | int pos; | |
21 | struct dir_struct *dir; | |
22 | merge_fn_t fn; | |
23 | ||
24 | int head_idx; | |
25 | int merge_size; | |
26 | ||
27 | struct cache_entry *df_conflict_entry; | |
28 | }; | |
29 | ||
30 | extern int unpack_trees(unsigned n, struct tree_desc *t, | |
31 | struct unpack_trees_options *options); | |
32 | ||
33 | int threeway_merge(struct cache_entry **stages, struct unpack_trees_options *o, int); | |
34 | int twoway_merge(struct cache_entry **src, struct unpack_trees_options *o, int); | |
35 | int bind_merge(struct cache_entry **src, struct unpack_trees_options *o, int); | |
36 | int oneway_merge(struct cache_entry **src, struct unpack_trees_options *o, int); | |
37 | ||
38 | #endif |