diff options
Diffstat (limited to 'libcharconv_draughts.c')
| -rw-r--r-- | libcharconv_draughts.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/libcharconv_draughts.c b/libcharconv_draughts.c index b45f4fe..00b97c9 100644 --- a/libcharconv_draughts.c +++ b/libcharconv_draughts.c @@ -7,18 +7,9 @@ libcharconv_draughts(const char *s, size_t slen, size_t *n, uint_least32_t *cp, { uint_least32_t c; *n = 0; - for (; slen--; s++) { - switch (*s) { - case '1': - case 'm': c = UINT32_C(0x26C0); goto conv; - case '2': - case 'k': c = UINT32_C(0x26C1); goto conv; - case 'M': c = UINT32_C(0x26C2); goto conv; - case 'K': c = UINT32_C(0x26C3); goto conv; - default: - *n += 1u; - break; - } + for (; slen--; s++, ++*n) { + PLAIN_SELECT("mkMK", 0x26C0); + PLAIN_RANGE('1', '2', 0x26C0); } no_conv: return LIBCHARCONV_NO_CONVERT; |
