diff options
author | Brian Downing <bdowning@lavos.net> | 2008-10-25 15:30:54 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-10-25 12:09:31 -0700 |
commit | ef2e62fe23173586f49a00c6ae953ebbdb0d13ab (patch) | |
tree | 13c9c71347563800dc9dfb025ad97bfcffb804f7 /xdiff/xemit.h | |
parent | 9ccd0a88ac3ea13ac2df4630bfd01c02084f965e (diff) | |
download | git-ef2e62fe23173586f49a00c6ae953ebbdb0d13ab.tar.gz git-ef2e62fe23173586f49a00c6ae953ebbdb0d13ab.tar.xz |
Allow alternate "low-level" emit function from xdl_diff
For some users (e.g. git blame), getting textual patch output is just
extra work, as they can get all the information they need from the low-
level diff structures. Allow for an alternate low-level emit function
to be defined to allow bypassing the textual patch generation; set
xemitconf_t's emit_func member to enable this.
The (void (*)()) type is pretty ugly, but the alternative would be to
include most of the private xdiff headers in xdiff.h to get the types
required for the "proper" function prototype. Also, a (void *) won't
work, as ANSI C doesn't allow a function pointer to be cast to an
object pointer.
Signed-off-by: Brian Downing <bdowning@lavos.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'xdiff/xemit.h')
-rw-r--r-- | xdiff/xemit.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/xdiff/xemit.h b/xdiff/xemit.h index 440a7390f..c2e2e8302 100644 --- a/xdiff/xemit.h +++ b/xdiff/xemit.h @@ -24,7 +24,10 @@ #define XEMIT_H +typedef int (*emit_func_t)(xdfenv_t *xe, xdchange_t *xscr, xdemitcb_t *ecb, + xdemitconf_t const *xecfg); +xdchange_t *xdl_get_hunk(xdchange_t *xscr, xdemitconf_t const *xecfg); int xdl_emit_diff(xdfenv_t *xe, xdchange_t *xscr, xdemitcb_t *ecb, xdemitconf_t const *xecfg); |