Add missing includes and forward declarations
[gitweb.git] / diffcore.h
index 33ea2de348803b29a08a6713ae4cab1345f874d9..0dd1e9a63a05de7774ebdea4f2236ce584c32d0c 100644 (file)
@@ -4,6 +4,10 @@
 #ifndef DIFFCORE_H
 #define DIFFCORE_H
 
+#include "cache.h"
+
+struct diff_options;
+
 /* This header file is internal between diff.c and its diff transformers
  * (e.g. diffcore-rename, diffcore-pickaxe).  Never include this header
  * in anything else.
@@ -25,7 +29,7 @@
 struct userdiff_driver;
 
 struct diff_filespec {
-       unsigned char sha1[20];
+       struct object_id oid;
        char *path;
        void *data;
        void *cnt_data;
@@ -33,7 +37,7 @@ struct diff_filespec {
        int count;               /* Reference count */
        int rename_used;         /* Count of rename users */
        unsigned short mode;     /* file mode */
-       unsigned sha1_valid : 1; /* if true, use sha1 and trust mode;
+       unsigned oid_valid : 1;  /* if true, use oid and trust mode;
                                  * if false, use the name and read from
                                  * the filesystem.
                                  */
@@ -52,7 +56,7 @@ struct diff_filespec {
 
 extern struct diff_filespec *alloc_filespec(const char *);
 extern void free_filespec(struct diff_filespec *);
-extern void fill_filespec(struct diff_filespec *, const unsigned char *,
+extern void fill_filespec(struct diff_filespec *, const struct object_id *,
                          int, unsigned short);
 
 #define CHECK_SIZE_ONLY 1
@@ -142,7 +146,6 @@ extern int diffcore_count_changes(struct diff_filespec *src,
                                  struct diff_filespec *dst,
                                  void **src_count_p,
                                  void **dst_count_p,
-                                 unsigned long delta_limit,
                                  unsigned long *src_copied,
                                  unsigned long *literal_added);