From 042e43247f396a9000fead59d9bff87bf12806d6 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 30 Oct 2024 01:51:14 +0100 Subject: Completely revamp the grab source code Some of the (many) few changes are: - Multithreading for significantly faster performance - The -p/--predicate flag - Byte offsets as the default - No customizable colors (maybe this will come back later) - Newer edition of mlib (formerly librune) --- vendor/librune/lib/utf8/u8prev.c | 40 ---------------------------------------- 1 file changed, 40 deletions(-) delete mode 100644 vendor/librune/lib/utf8/u8prev.c (limited to 'vendor/librune/lib/utf8/u8prev.c') diff --git a/vendor/librune/lib/utf8/u8prev.c b/vendor/librune/lib/utf8/u8prev.c deleted file mode 100644 index a219ae9..0000000 --- a/vendor/librune/lib/utf8/u8prev.c +++ /dev/null @@ -1,40 +0,0 @@ -#define _RUNE_NO_MACRO_WRAPPER 1 -#include "rune.h" -#include "utf8.h" - -#include "internal/common.h" - -int -u8prev(rune *ch, const char8_t **p, const char8_t *start) -{ - int off; - bool match = true; - const char8_t *s = *p; - ptrdiff_t d = s - start; - - if (d <= 0) { - return 0; - } else if (U1(s[-1])) { - *ch = s[-1]; - off = 1; - } else if (d > 1 && UC(s[-1]) && U2(s[-2])) { - *ch = ((s[-2] & 0x1F) << 6) | (s[-1] & 0x3F); - off = 2; - } else if (d > 2 && UC(s[-1]) && UC(s[-2]) && U3(s[-3])) { - *ch = ((s[-3] & 0x0F) << 12) | ((s[-2] & 0x3F) << 6) | (s[-1] & 0x3F); - off = 3; - } else if (d > 3 && UC(s[-1]) && UC(s[-2]) && UC(s[-3]) && U4(s[-4])) { - *ch = ((s[-4] & 0x07) << 18) | ((s[-3] & 0x3F) << 12) - | ((s[-2] & 0x3F) << 6) | (s[-1] & 0x3F); - off = 4; - } else - match = false; - - if (!(match && u8chkr(*ch))) { - *ch = RUNE_ERROR; - off = 1; - } - - *p -= off; - return off; -} -- cgit v1.2.3