Add missing includes and forward declarations
[gitweb.git] / diffcore.h
index 8a9c9d781a835e2412d0d30fb384062b4dd48a59..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