xdiff-interface: hide the whole "xdiff_emit_state" business from the caller
[git/git.git] / xdiff-interface.h
index f6a1ec2..558492b 100644 (file)
@@ -2,20 +2,13 @@
 #define XDIFF_INTERFACE_H
 
 #include "xdiff/xdiff.h"
-#include "strbuf.h"
-
-struct xdiff_emit_state;
 
 typedef void (*xdiff_emit_consume_fn)(void *, char *, unsigned long);
 
-struct xdiff_emit_state {
-       xdiff_emit_consume_fn consume;
-       struct strbuf remainder;
-};
-
 int xdi_diff(mmfile_t *mf1, mmfile_t *mf2, xpparam_t const *xpp, xdemitconf_t const *xecfg, xdemitcb_t *ecb);
 int xdi_diff_outf(mmfile_t *mf1, mmfile_t *mf2,
-                 struct xdiff_emit_state *state, xpparam_t const *xpp,
+                 xdiff_emit_consume_fn fn, void *consume_callback_data,
+                 xpparam_t const *xpp,
                  xdemitconf_t const *xecfg, xdemitcb_t *xecb);
 int parse_hunk_header(char *line, int len,
                      int *ob, int *on,