checkout: introduce checkout.overlayMode config
[gitweb.git] / userdiff.h
index c3151594f5c0643fead757accc27bf1093cf4a68..b072bfe89a46efb47c2808b5469bdf1bbfb4cc63 100644 (file)
@@ -1,6 +1,10 @@
 #ifndef USERDIFF_H
 #define USERDIFF_H
 
+#include "notes-cache.h"
+
+struct index_state;
+
 struct userdiff_funcname {
        const char *pattern;
        int cflags;
@@ -13,10 +17,19 @@ struct userdiff_driver {
        struct userdiff_funcname funcname;
        const char *word_regex;
        const char *textconv;
+       struct notes_cache *textconv_cache;
+       int textconv_want_cache;
 };
 
 int userdiff_config(const char *k, const char *v);
 struct userdiff_driver *userdiff_find_by_name(const char *name);
-struct userdiff_driver *userdiff_find_by_path(const char *path);
+struct userdiff_driver *userdiff_find_by_path(struct index_state *istate,
+                                             const char *path);
+
+/*
+ * Initialize any textconv-related fields in the driver and return it, or NULL
+ * if it does not have textconv enabled at all.
+ */
+struct userdiff_driver *userdiff_get_textconv(struct userdiff_driver *driver);
 
 #endif /* USERDIFF */