commit-reach: prepare in_merge_bases[_many] to handle any repo
[gitweb.git] / ll-merge.h
index 57889227b1782d3792be2046fbb54bca67b779de..6c6e22e40d9bab4b5071319acd5356993e7888b4 100644 (file)
@@ -5,13 +5,25 @@
 #ifndef LL_MERGE_H
 #define LL_MERGE_H
 
+#include "xdiff/xdiff.h"
+
+struct index_state;
+
+struct ll_merge_options {
+       unsigned virtual_ancestor : 1;
+       unsigned variant : 2;   /* favor ours, favor theirs, or union merge */
+       unsigned renormalize : 1;
+       long xdl_opts;
+};
+
 int ll_merge(mmbuffer_t *result_buf,
             const char *path,
-            mmfile_t *ancestor,
+            mmfile_t *ancestor, const char *ancestor_label,
             mmfile_t *ours, const char *our_label,
             mmfile_t *theirs, const char *their_label,
-            int flag);
+            struct index_state *istate,
+            const struct ll_merge_options *opts);
 
-int ll_merge_marker_size(const char *path);
+int ll_merge_marker_size(struct index_state *istate, const char *path);
 
 #endif