diff options
Diffstat (limited to 'libcharconv_dice.c')
| -rw-r--r-- | libcharconv_dice.c | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/libcharconv_dice.c b/libcharconv_dice.c index dc02bb5..5bcae87 100644 --- a/libcharconv_dice.c +++ b/libcharconv_dice.c @@ -7,18 +7,8 @@ libcharconv_dice(const char *s, size_t slen, size_t *n, uint_least32_t *cp, size { uint_least32_t c; *n = 0; - for (; slen--; s++) { - switch (*s) { - case '1': c = UINT32_C(0x2680); goto conv; - case '2': c = UINT32_C(0x2681); goto conv; - case '3': c = UINT32_C(0x2682); goto conv; - case '4': c = UINT32_C(0x2683); goto conv; - case '5': c = UINT32_C(0x2684); goto conv; - case '6': c = UINT32_C(0x2685); goto conv; - default: - *n += 1u; - break; - } + for (; slen--; s++, ++*n) { + PLAIN_RANGE('1', '6', 0x2680); } no_conv: return LIBCHARCONV_NO_CONVERT; |
