unpack-trees.hon commit git-svn: allow 'init' to act as multi-init (dadc6d2)
   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
   9struct unpack_trees_options {
  10        int reset;
  11        int merge;
  12        int update;
  13        int index_only;
  14        int nontrivial_merge;
  15        int trivial_merges_only;
  16        int verbose_update;
  17        int aggressive;
  18        const char *prefix;
  19        struct dir_struct *dir;
  20        merge_fn_t fn;
  21
  22        int head_idx;
  23        int merge_size;
  24
  25        struct cache_entry *df_conflict_entry;
  26};
  27
  28extern int unpack_trees(struct object_list *trees,
  29                struct unpack_trees_options *options);
  30
  31int threeway_merge(struct cache_entry **stages, struct unpack_trees_options *o);
  32int twoway_merge(struct cache_entry **src, struct unpack_trees_options *o);
  33int bind_merge(struct cache_entry **src, struct unpack_trees_options *o);
  34int oneway_merge(struct cache_entry **src, struct unpack_trees_options *o);
  35
  36#endif