From 4f0c14bd3f4600930a3ebad8a2ee82b6ca2c89d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Andr=C3=A9=20Tanner?= Date: Wed, 14 Jun 2017 14:03:22 +0200 Subject: text-util: add text_range_intersect utility function --- text-util.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'text-util.c') 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), -- cgit v1.2.3