summaryrefslogtreecommitdiff
path: root/src/ctype/iswpunct.c
blob: d88010463c9f8d481c2d55e0d25b8d0898a608b4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <wctype.h>
#include "libc.h"

static const unsigned char table[] = {
#include "punct.h"
};

int iswpunct(wint_t wc)
{
	if (wc<0x20000U)
		return (table[table[wc>>8]*32+((wc&255)>>3)]>>(wc&7))&1;
	return 0;
}

int __iswpunct_l(wint_t c, locale_t l)
{
	return iswpunct(c);
}

weak_alias(__iswpunct_l, iswpunct_l);