const unsigned char *sha2,
const char *base, const char *path);
+extern void diff_helper_input(unsigned mode1,
+ unsigned mode2,
+ const unsigned char *sha1,
+ const unsigned char *sha2,
+ const char *path1,
+ int status,
+ int score,
+ const char *path2);
+
extern void diff_unmerge(const char *path);
extern int diff_scoreopt_parse(const char *opt);
-extern void diff_setup(int detect_rename, int minimum_score,
- int reverse, int raw_output,
- const char **spec, int cnt);
+#define DIFF_SETUP_REVERSE 1
+#define DIFF_SETUP_USE_CACHE 2
+#define DIFF_SETUP_USE_SIZE_CACHE 4
+extern void diff_setup(int flags);
+
+#define DIFF_DETECT_RENAME 1
+#define DIFF_DETECT_COPY 2
+
+extern void diffcore_rename(int rename_copy, int minimum_score);
+
+#define DIFF_PICKAXE_ALL 1
+extern void diffcore_pickaxe(const char *needle, int opts);
+
+extern void diffcore_pathspec(const char **pathspec);
+
+extern void diffcore_std(const char **paths,
+ int detect_rename, int rename_score,
+ const char *pickaxe, int pickaxe_opts);
+
+extern int diff_queue_is_empty(void);
+
+#define DIFF_FORMAT_HUMAN 0
+#define DIFF_FORMAT_MACHINE 1
+#define DIFF_FORMAT_PATCH 2
+#define DIFF_FORMAT_NO_OUTPUT 3
-extern void diff_flush(void);
+extern void diff_flush(int output_style, int resolve_rename_copy);
#endif /* DIFF_H */