Thread (41 messages) 41 messages, 2 authors, 2019-01-08

Re: [RFC PATCH 1/3] xdiff-interface: make xdl_blankline() available

From: Stefan Beller <hidden>
Date: 2018-09-24 23:19:39

On Mon, Sep 24, 2018 at 3:06 AM Phillip Wood [off-list ref] wrote:
quoted hunk ↗ jump to hunk
From: Phillip Wood <redacted>

This will be used by the move detection code.

Signed-off-by: Phillip Wood <redacted>
---
 xdiff-interface.c | 5 +++++
 xdiff-interface.h | 5 +++++
 2 files changed, 10 insertions(+)
diff --git a/xdiff-interface.c b/xdiff-interface.c
index 9315bc0ede..eceabfa72d 100644
--- a/xdiff-interface.c
+++ b/xdiff-interface.c
@@ -308,6 +308,11 @@ int xdiff_compare_lines(const char *l1, long s1,
        return xdl_recmatch(l1, s1, l2, s2, flags);
 }

+int xdiff_is_blankline(const char *l1, long s1, long flags)
+{
+       return xdl_blankline(l1, s1, flags);
+}
+
 int git_xmerge_style = -1;

 int git_xmerge_config(const char *var, const char *value, void *cb)
diff --git a/xdiff-interface.h b/xdiff-interface.h
index 135fc05d72..d0008b016f 100644
--- a/xdiff-interface.h
+++ b/xdiff-interface.h
@@ -45,4 +45,9 @@ extern int xdiff_compare_lines(const char *l1, long s1,
  */
 extern unsigned long xdiff_hash_string(const char *s, size_t len, long flags);

+/*
+ * Returns 1 if the line is blank, taking XDF_WHITESPACE_FLAGS into account
presumably in the flags field.
+ */
+extern int xdiff_is_blankline(const char *s, long len, long flags);
We also have
    int ws_blank_line(const char *, int, int)
that looks very similar, but works slightly differently.
grep.c has
    static int is_empty_line(const char *bol, const char *eol)
    {
       while (bol < eol && isspace(*bol))
       bol++;
       return bol == eol;
    }

pretty.c also has a is_blank_line() (and some stale comment in
that file refers to it as is_empty_line, 77356122443
(pretty: make the skip_blank_lines() function public,
2016-06-22)

Would we be able to unify all these down to one or two
functions? (Maybe all can use the new xdiff function?)
It seems as if we're reinventing the wheel a couple times
in our code base.

Stefan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help