Skip to content

Commit 97a26ae

Browse files
NattyNarwhalcmb69
andauthored
Update OpenBSD glob implementation for Windows (#16948)
We're considering making this used as a glob implementation on POSIX as well, but first, we should rebase it from the latest version of OpenBSD. This also adds a new internal header (charclass.h) for glob. See conversation in GH-15564. Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>
1 parent d8d1cb4 commit 97a26ae

File tree

3 files changed

+426
-144
lines changed

3 files changed

+426
-144
lines changed

win32/charclass.h

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/*
2+
* Public domain, 2008, Todd C. Miller <millert@openbsd.org>
3+
*
4+
* $OpenBSD: charclass.h,v 1.3 2020/10/13 04:42:28 guenther Exp $
5+
*/
6+
7+
/*
8+
* POSIX character class support for fnmatch() and glob().
9+
*/
10+
static const struct cclass {
11+
const char *name;
12+
int (*isctype)(int);
13+
} cclasses[] = {
14+
{ "alnum", isalnum },
15+
{ "alpha", isalpha },
16+
{ "blank", isblank },
17+
{ "cntrl", iscntrl },
18+
{ "digit", isdigit },
19+
{ "graph", isgraph },
20+
{ "lower", islower },
21+
{ "print", isprint },
22+
{ "punct", ispunct },
23+
{ "space", isspace },
24+
{ "upper", isupper },
25+
{ "xdigit", isxdigit },
26+
{ NULL, NULL }
27+
};
28+
29+
#define NCCLASSES (sizeof(cclasses) / sizeof(cclasses[0]) - 1)

0 commit comments

Comments
 (0)