unpack-trees.hon commit git-gc --auto: move threshold check to need_to_gc() function. (caf9de2)
   1#ifndef UNPACK_TREES_H
   2#define UNPACK_TREES_H
   3
   4struct unpack_trees_options;
   5
   6typedef int (*merge_fn_t)(struct cache_entry **src,
   7                struct unpack_trees_options *options,
   8                int remove);
   9
  10struct 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
  30extern int unpack_trees(unsigned n, struct tree_desc *t,
  31                struct unpack_trees_options *options);
  32
  33int threeway_merge(struct cache_entry **stages, struct unpack_trees_options *o, int);
  34int twoway_merge(struct cache_entry **src, struct unpack_trees_options *o, int);
  35int bind_merge(struct cache_entry **src, struct unpack_trees_options *o, int);
  36int oneway_merge(struct cache_entry **src, struct unpack_trees_options *o, int);
  37
  38#endif