aboutsummaryrefslogtreecommitdiff
path: root/text-util.c
diff options
context:
space:
mode:
Diffstat (limited to 'text-util.c')
-rw-r--r--text-util.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/text-util.c b/text-util.c
index f198d81..4936d92 100644
--- a/text-util.c
+++ b/text-util.c
@@ -27,6 +27,12 @@ Filerange text_range_union(const Filerange *r1, const Filerange *r2) {
};
}
+Filerange text_range_intersect(const Filerange *r1, const Filerange *r2) {
+ if (!text_range_overlap(r1, r2))
+ return text_range_empty();
+ return text_range_new(MAX(r1->start, r2->start), MIN(r1->end, r2->end));
+}
+
Filerange text_range_new(size_t a, size_t b) {
return (Filerange) {
.start = MIN(a, b),