Signed-off-by: Sebastian <sebastian@sebsite.pw>
---
encoding/utf8/decode.ha | 10 ----------
encoding/utf8/rune.ha | 10 ++++++++++
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/encoding/utf8/decode.ha b/encoding/utf8/decode.ha
index 6c503886..81b06559 100644
--- a/encoding/utf8/decode.ha
+++ b/encoding/utf8/decode.ha
@@ -154,13 +154,3 @@ export fn valid(src: (str | []u8)) bool = {
};
abort();
};
-
-// Returns the expected length of a UTF-8 codepoint in bytes given its first
-// byte, or void if the given byte doesn't begin a valid UTF-8 sequence.
-export fn utf8sz(c: u8) (size | void) = {
- for (let i = 0z; i < len(sizes); i += 1) {
- if (c & sizes[i].mask == sizes[i].result) {
- return sizes[i].octets;
- };
- };
-};
diff --git a/encoding/utf8/rune.ha b/encoding/utf8/rune.ha
index ccdfe1d1..10d1aa17 100644
--- a/encoding/utf8/rune.ha
+++ b/encoding/utf8/rune.ha
@@ -27,3 +27,13 @@ export fn runesz(r: rune) size = {
else if (ch < 0x10000) 3
else 4;
};
+
+// Returns the expected length of a UTF-8 codepoint in bytes given its first
+// byte, or void if the given byte doesn't begin a valid UTF-8 sequence.
+export fn utf8sz(c: u8) (size | void) = {
+ for (let i = 0z; i < len(sizes); i += 1) {
+ if (c & sizes[i].mask == sizes[i].result) {
+ return sizes[i].octets;
+ };
+ };
+};
--
2.36.1
Signed-off-by: Sebastian <sebastian@sebsite.pw>
---
encoding/utf8/rune.ha | 2 --
1 file changed, 2 deletions(-)
diff --git a/encoding/utf8/rune.ha b/encoding/utf8/rune.ha
index 10d1aa17..0390609d 100644
--- a/encoding/utf8/rune.ha
+++ b/encoding/utf8/rune.ha
@@ -15,8 +15,6 @@ const sizes: [_]rsize = [
rsize { mask = 0xE0, result = 0xC0, octets = 2 },
rsize { mask = 0xF0, result = 0xE0, octets = 3 },
rsize { mask = 0xF8, result = 0xF0, octets = 4 },
- rsize { mask = 0xFC, result = 0xF8, octets = 5 },
- rsize { mask = 0xFE, result = 0xF8, octets = 6 },
];
// Returns the size of a rune, in octets, when encoded as UTF-8.
--
2.36.1