diff options
| author | Mattias Andrée <m@maandree.se> | 2026-01-28 22:03:48 +0100 |
|---|---|---|
| committer | Mattias Andrée <m@maandree.se> | 2026-01-28 22:03:48 +0100 |
| commit | 40bf70fb8f23e5ff7212b568c69e0725372e5b57 (patch) | |
| tree | 0d4be706d0182ddeafd4eaafd073e12c2fa2a9e8 /libcharconv_lydian.c | |
| parent | Misc stuff (diff) | |
| download | charconv-40bf70fb8f23e5ff7212b568c69e0725372e5b57.tar.gz charconv-40bf70fb8f23e5ff7212b568c69e0725372e5b57.tar.bz2 charconv-40bf70fb8f23e5ff7212b568c69e0725372e5b57.tar.xz | |
Clean up
Signed-off-by: Mattias Andrée <m@maandree.se>
Diffstat (limited to 'libcharconv_lydian.c')
| -rw-r--r-- | libcharconv_lydian.c | 48 |
1 files changed, 6 insertions, 42 deletions
diff --git a/libcharconv_lydian.c b/libcharconv_lydian.c index a3427fa..2165a59 100644 --- a/libcharconv_lydian.c +++ b/libcharconv_lydian.c @@ -2,51 +2,15 @@ #include "lib-common.h" -static struct { - unsigned char cp_low; - char latin; -} lydian[] = { - {0x20, 'a'}, - {0x21, 'b'}, - {0x39, 'c'}, - {0x23, 'd'}, - {0x24, 'e'}, - {0x31, 'f'}, - {0x22, 'g'}, - {0x26, 'i'}, - {0x28, 'k'}, - {0x29, 'l'}, - {0x2A, 'm'}, - {0x2B, 'n'}, - {0x2C, 'o'}, - {0x32, 'q'}, - {0x2D, 'r'}, - {0x33, 's'}, - {0x2F, 't'}, - {0x30, 'u'}, - {0x25, 'v'}, - {0x27, 'y'}, - {0x35, 'A'}, - {0x36, 'E'}, - {0x37, 'L'}, - {0x38, 'N'}, - {0x2E, 'S'}, - {0x34, 'T'}, - {0x3F, '\"'}, - {0x3F, '\''} -}; - - enum libcharconv_result libcharconv_lydian(const char *s, size_t slen, size_t *n, uint_least32_t *cp, size_t *ncp) { - size_t i; + uint_least32_t c; *n = 0; - for (; slen--; s++) { - for (i = 0u; i < sizeof(lydian) / sizeof(*lydian); i++) - if (*s == lydian[i].latin) - goto conv; - *n += 1u; + for (; slen--; s++, ++*n) { + PLAIN_SELECT("abgdeviyklmnorStufqsTAELNc", 0x10920); + PLAIN_SINGLE('\"', 0x1093F); + PLAIN_SINGLE('\'', 0x1093F); } no_conv: return LIBCHARCONV_NO_CONVERT; @@ -55,7 +19,7 @@ conv: if (*n) goto no_conv; if (*ncp) - *cp = (uint_least32_t)(UINT32_C(0x10900) | lydian[i].cp_low); + *cp = c; *n += 1u; *ncp = 1u; return LIBCHARCONV_CONVERTED; |
