f9846a9a6b
This optimizes the binary size for each tool that uses these functions. Previously, if a program just used one single function, maybe even a one-liner, it would statically compile in all lookup-tables, bloating the binary by up to 20K. All these changes are derived from a local libutf where I do the primary changes. So I hope that I can merge these things into libutf sooner or later, as discussed on the ml.
68 lines
1.3 KiB
C
68 lines
1.3 KiB
C
/* Automatically generated by mkrunetype.awk */
|
|
#include <stdlib.h>
|
|
|
|
#include "../utf.h"
|
|
#include "runetype.h"
|
|
|
|
static Rune digit2[][2] = {
|
|
{ 0x0030, 0x0039 },
|
|
{ 0x0660, 0x0669 },
|
|
{ 0x06F0, 0x06F9 },
|
|
{ 0x07C0, 0x07C9 },
|
|
{ 0x0966, 0x096F },
|
|
{ 0x09E6, 0x09EF },
|
|
{ 0x0A66, 0x0A6F },
|
|
{ 0x0AE6, 0x0AEF },
|
|
{ 0x0B66, 0x0B6F },
|
|
{ 0x0BE6, 0x0BEF },
|
|
{ 0x0C66, 0x0C6F },
|
|
{ 0x0CE6, 0x0CEF },
|
|
{ 0x0D66, 0x0D6F },
|
|
{ 0x0DE6, 0x0DEF },
|
|
{ 0x0E50, 0x0E59 },
|
|
{ 0x0ED0, 0x0ED9 },
|
|
{ 0x0F20, 0x0F29 },
|
|
{ 0x1040, 0x1049 },
|
|
{ 0x1090, 0x1099 },
|
|
{ 0x17E0, 0x17E9 },
|
|
{ 0x1810, 0x1819 },
|
|
{ 0x1946, 0x194F },
|
|
{ 0x19D0, 0x19D9 },
|
|
{ 0x1A80, 0x1A89 },
|
|
{ 0x1A90, 0x1A99 },
|
|
{ 0x1B50, 0x1B59 },
|
|
{ 0x1BB0, 0x1BB9 },
|
|
{ 0x1C40, 0x1C49 },
|
|
{ 0x1C50, 0x1C59 },
|
|
{ 0xA620, 0xA629 },
|
|
{ 0xA8D0, 0xA8D9 },
|
|
{ 0xA900, 0xA909 },
|
|
{ 0xA9D0, 0xA9D9 },
|
|
{ 0xA9F0, 0xA9F9 },
|
|
{ 0xAA50, 0xAA59 },
|
|
{ 0xABF0, 0xABF9 },
|
|
{ 0xFF10, 0xFF19 },
|
|
{ 0x104A0, 0x104A9 },
|
|
{ 0x11066, 0x1106F },
|
|
{ 0x110F0, 0x110F9 },
|
|
{ 0x11136, 0x1113F },
|
|
{ 0x111D0, 0x111D9 },
|
|
{ 0x112F0, 0x112F9 },
|
|
{ 0x114D0, 0x114D9 },
|
|
{ 0x11650, 0x11659 },
|
|
{ 0x116C0, 0x116C9 },
|
|
{ 0x118E0, 0x118E9 },
|
|
{ 0x16A60, 0x16A69 },
|
|
{ 0x16B50, 0x16B59 },
|
|
{ 0x1D7CE, 0x1D7FF },
|
|
};
|
|
|
|
int
|
|
isdigitrune(Rune r)
|
|
{
|
|
if(bsearch(&r, digit2, nelem(digit2), sizeof *digit2, &rune2cmp))
|
|
return 1;
|
|
return 0;
|
|
}
|
|
|