From 6012a00763afdd467e71b1657bd9a39a4cba4493 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Sat, 14 Sep 2024 00:12:52 -0400 Subject: Clean up pattern code to make better use of TextIter_t and fix up URI/URL patterns --- stdlib/text.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'stdlib/text.h') diff --git a/stdlib/text.h b/stdlib/text.h index 841d51fe..bad0187b 100644 --- a/stdlib/text.h +++ b/stdlib/text.h @@ -12,6 +12,7 @@ #include "integers.h" typedef struct { + Text_t text; int64_t subtext, sum_of_previous_subtexts; } TextIter_t; @@ -53,13 +54,13 @@ Text_t Text$from_bytes(Array_t bytes); Array_t Text$lines(Text_t text); Text_t Text$join(Text_t glue, Array_t pieces); Text_t Text$repeat(Text_t text, Int_t count); -int32_t Text$get_grapheme_fast(Text_t text, TextIter_t *state, int64_t index); -ucs4_t Text$get_main_grapheme_fast(Text_t text, TextIter_t *state, int64_t index); +int32_t Text$get_grapheme_fast(TextIter_t *state, int64_t index); +ucs4_t Text$get_main_grapheme_fast(TextIter_t *state, int64_t index); static inline int32_t Text$get_grapheme(Text_t text, int64_t index) { - TextIter_t state = {0, 0}; - return Text$get_grapheme_fast(text, &state, index); + TextIter_t state = {text, 0, 0}; + return Text$get_grapheme_fast(&state, index); } extern const TypeInfo Text$info; -- cgit v1.2.3