vis

a vi-like editor based on Plan 9's structural regular expressions

git clone https://9o.is/git/vis.git

commit 267135b35788a137fd76d551a1b9acf999f43d97
parent d99048552534d6416f9465cff89ec1099df075fc
Author: Marc André Tanner <mat@brain-dump.org>
Date:   Wed, 30 Mar 2016 13:15:17 +0200

text-util: constify text_range_* functions

Diffstat:
Mtext-util.c | 12++++++------
Mtext-util.h | 12++++++------
2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/text-util.c b/text-util.c @@ -3,11 +3,11 @@ #include <wchar.h> #include <errno.h> -bool text_range_valid(Filerange *r) { +bool text_range_valid(const Filerange *r) { return r->start != EPOS && r->end != EPOS && r->start <= r->end; } -size_t text_range_size(Filerange *r) { +size_t text_range_size(const Filerange *r) { return text_range_valid(r) ? r->end - r->start : 0; } @@ -15,7 +15,7 @@ Filerange text_range_empty(void) { return (Filerange){ .start = EPOS, .end = EPOS }; } -Filerange text_range_union(Filerange *r1, Filerange *r2) { +Filerange text_range_union(const Filerange *r1, const Filerange *r2) { if (!text_range_valid(r1)) return *r2; if (!text_range_valid(r2)) @@ -33,19 +33,19 @@ Filerange text_range_new(size_t a, size_t b) { }; } -bool text_range_equal(Filerange *r1, Filerange *r2) { +bool text_range_equal(const Filerange *r1, const Filerange *r2) { if (!text_range_valid(r1) && !text_range_valid(r2)) return true; return r1->start == r2->start && r1->end == r2->end; } -bool text_range_overlap(Filerange *r1, Filerange *r2) { +bool text_range_overlap(const Filerange *r1, const Filerange *r2) { if (!text_range_valid(r1) || !text_range_valid(r2)) return false; return r1->start <= r2->end && r2->start <= r1->end; } -bool text_range_contains(Filerange *r, size_t pos) { +bool text_range_contains(const Filerange *r, size_t pos) { return text_range_valid(r) && r->start <= pos && pos <= r->end; } diff --git a/text-util.h b/text-util.h @@ -6,21 +6,21 @@ #include "text.h" /* test whether the given range is valid (start <= end) */ -bool text_range_valid(Filerange*); +bool text_range_valid(const Filerange*); /* get the size of the range (end-start) or zero if invalid */ -size_t text_range_size(Filerange*); +size_t text_range_size(const Filerange*); /* create an empty / invalid range of size zero */ Filerange text_range_empty(void); /* merge two ranges into a new one which contains both of them */ -Filerange text_range_union(Filerange*, Filerange*); +Filerange text_range_union(const Filerange*, const Filerange*); /* create new range [min(a,b), max(a,b)] */ Filerange text_range_new(size_t a, size_t b); /* test whether two ranges are equal */ -bool text_range_equal(Filerange*, Filerange*); +bool text_range_equal(const Filerange*, const Filerange*); /* test whether two ranges overlap */ -bool text_range_overlap(Filerange*, Filerange*); +bool text_range_overlap(const Filerange*, const Filerange*); /* test whether a given position is within a certain range */ -bool text_range_contains(Filerange*, size_t pos); +bool text_range_contains(const Filerange*, size_t pos); /* count the number of graphemes in data */ int text_char_count(const char *data, size_t len);