summaryrefslogtreecommitdiff
path: root/unpack-trees.h
diff options
context:
space:
mode:
authorJohannes Schindelin <Johannes.Schindelin@gmx.de>2006-07-30 20:25:18 +0200
committerJunio C Hamano <junkio@cox.net>2006-07-30 23:31:31 -0700
commit16da134b1f9b0fbd1d328999875d34d02e5470b4 (patch)
tree8273a85851131b42e34e250de7f5f2ed5c983a93 /unpack-trees.h
parentb63fafdfd844c2037fba53b9944431c1378b4135 (diff)
downloadgit-16da134b1f9b0fbd1d328999875d34d02e5470b4.tar.gz
read-trees: refactor the unpack_trees() part
Basically, the options are passed by a struct unpack_trees_options now. That's all. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'unpack-trees.h')
-rw-r--r--unpack-trees.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/unpack-trees.h b/unpack-trees.h
new file mode 100644
index 0000000000..38af89a6b7
--- /dev/null
+++ b/unpack-trees.h
@@ -0,0 +1,30 @@
+#ifndef UNPACK_TREES_H
+#define UNPACK_TREES_H
+
+struct unpack_trees_options;
+
+typedef int (*merge_fn_t)(struct cache_entry **src,
+ struct unpack_trees_options *options);
+
+struct unpack_trees_options {
+ int reset;
+ int merge;
+ int update;
+ int index_only;
+ int nontrivial_merge;
+ int trivial_merges_only;
+ int verbose_update;
+ int aggressive;
+ const char *prefix;
+ merge_fn_t fn;
+
+ int head_idx;
+ int merge_size;
+
+ struct cache_entry *df_conflict_entry;
+};
+
+extern int unpack_trees(struct object_list *trees,
+ struct unpack_trees_options *options);
+
+#endif