sbase/libutf/istitlerune.c
FRIGN f9846a9a6b Split up is*rune() and to*rune() functions into individual source files
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.
2015-02-11 15:48:18 +01:00

33 lines
497 B
C

/* Automatically generated by mkrunetype.awk */
#include <stdlib.h>
#include "../utf.h"
#include "runetype.h"
static Rune title2[][2] = {
{ 0x1F88, 0x1F8F },
{ 0x1F98, 0x1F9F },
{ 0x1FA8, 0x1FAF },
};
static Rune title1[] = {
0x01C5,
0x01C8,
0x01CB,
0x01F2,
0x1FBC,
0x1FCC,
0x1FFC,
};
int
istitlerune(Rune r)
{
if(bsearch(&r, title2, nelem(title2), sizeof *title2, &rune2cmp))
return 1;
if(bsearch(&r, title1, nelem(title1), sizeof *title1, &rune1cmp))
return 1;
return 0;
}