diff options
author | bfredl <bjorn.linse@gmail.com> | 2023-08-24 15:14:23 +0200 |
---|---|---|
committer | bfredl <bjorn.linse@gmail.com> | 2023-08-24 22:40:56 +0200 |
commit | cefd774fac76b91f5368833555818c80c992c3b1 (patch) | |
tree | 146d6cb8fde01d28c5b03b9640f9e2515c4a89b7 /src/nvim/syntax.c | |
parent | daf7abbc4238dc269e22dd431bc4b1627ef9b6a1 (diff) | |
download | rneovim-cefd774fac76b91f5368833555818c80c992c3b1.tar.gz rneovim-cefd774fac76b91f5368833555818c80c992c3b1.tar.bz2 rneovim-cefd774fac76b91f5368833555818c80c992c3b1.zip |
refactor(memline): distinguish mutating uses of ml_get_buf()
ml_get_buf() takes a third parameters to indicate whether the
caller wants to mutate the memline data in place. However
the vast majority of the call sites is using this function
just to specify a buffer but without any mutation. This makes
it harder to grep for the places which actually perform mutation.
Solution: Remove the bool param from ml_get_buf(). it now works
like ml_get() except for a non-current buffer. Add a new
ml_get_buf_mut() function for the mutating use-case, which can
be grepped along with the other ml_replace() etc functions which
can modify the memline.
Diffstat (limited to 'src/nvim/syntax.c')
-rw-r--r-- | src/nvim/syntax.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/nvim/syntax.c b/src/nvim/syntax.c index ea7f3a085f..7e3ae4a62c 100644 --- a/src/nvim/syntax.c +++ b/src/nvim/syntax.c @@ -2475,7 +2475,7 @@ static void find_endpos(int idx, lpos_T *startpos, lpos_T *m_endpos, lpos_T *hl_ break; } - line = ml_get_buf(syn_buf, startpos->lnum, false); + line = ml_get_buf(syn_buf, startpos->lnum); int line_len = (int)strlen(line); // take care of an empty match or negative offset @@ -2611,7 +2611,7 @@ static void syn_add_end_off(lpos_T *result, regmmatch_T *regmatch, synpat_T *spp if (result->lnum > syn_buf->b_ml.ml_line_count) { col = 0; } else if (off != 0) { - base = ml_get_buf(syn_buf, result->lnum, false); + base = ml_get_buf(syn_buf, result->lnum); p = base + col; if (off > 0) { while (off-- > 0 && *p != NUL) { @@ -2653,10 +2653,10 @@ static void syn_add_start_off(lpos_T *result, regmmatch_T *regmatch, synpat_T *s if (result->lnum > syn_buf->b_ml.ml_line_count) { // a "\n" at the end of the pattern may take us below the last line result->lnum = syn_buf->b_ml.ml_line_count; - col = (int)strlen(ml_get_buf(syn_buf, result->lnum, false)); + col = (int)strlen(ml_get_buf(syn_buf, result->lnum)); } if (off != 0) { - base = ml_get_buf(syn_buf, result->lnum, false); + base = ml_get_buf(syn_buf, result->lnum); p = base + col; if (off > 0) { while (off-- && *p != NUL) { @@ -2675,7 +2675,7 @@ static void syn_add_start_off(lpos_T *result, regmmatch_T *regmatch, synpat_T *s /// Get current line in syntax buffer. static char *syn_getcurline(void) { - return ml_get_buf(syn_buf, current_lnum, false); + return ml_get_buf(syn_buf, current_lnum); } // Call vim_regexec() to find a match with "rmp" in "syn_buf". |