xref: /minix3/external/bsd/llvm/dist/llvm/lib/Support/regcclass.h (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1f4a2713aSLionel Sambuc /*-
2f4a2713aSLionel Sambuc  * This code is derived from OpenBSD's libc/regex, original license follows:
3f4a2713aSLionel Sambuc  *
4f4a2713aSLionel Sambuc  * This code is derived from OpenBSD's libc/regex, original license follows:
5f4a2713aSLionel Sambuc  *
6f4a2713aSLionel Sambuc  * Copyright (c) 1992, 1993, 1994 Henry Spencer.
7f4a2713aSLionel Sambuc  * Copyright (c) 1992, 1993, 1994
8f4a2713aSLionel Sambuc  *	The Regents of the University of California.  All rights reserved.
9f4a2713aSLionel Sambuc  *
10f4a2713aSLionel Sambuc  * This code is derived from software contributed to Berkeley by
11f4a2713aSLionel Sambuc  * Henry Spencer.
12f4a2713aSLionel Sambuc  *
13f4a2713aSLionel Sambuc  * Redistribution and use in source and binary forms, with or without
14f4a2713aSLionel Sambuc  * modification, are permitted provided that the following conditions
15f4a2713aSLionel Sambuc  * are met:
16f4a2713aSLionel Sambuc  * 1. Redistributions of source code must retain the above copyright
17f4a2713aSLionel Sambuc  *    notice, this list of conditions and the following disclaimer.
18f4a2713aSLionel Sambuc  * 2. Redistributions in binary form must reproduce the above copyright
19f4a2713aSLionel Sambuc  *    notice, this list of conditions and the following disclaimer in the
20f4a2713aSLionel Sambuc  *    documentation and/or other materials provided with the distribution.
21f4a2713aSLionel Sambuc  * 3. Neither the name of the University nor the names of its contributors
22f4a2713aSLionel Sambuc  *    may be used to endorse or promote products derived from this software
23f4a2713aSLionel Sambuc  *    without specific prior written permission.
24f4a2713aSLionel Sambuc  *
25f4a2713aSLionel Sambuc  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
26f4a2713aSLionel Sambuc  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27f4a2713aSLionel Sambuc  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28f4a2713aSLionel Sambuc  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
29f4a2713aSLionel Sambuc  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30f4a2713aSLionel Sambuc  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
31f4a2713aSLionel Sambuc  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32f4a2713aSLionel Sambuc  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33f4a2713aSLionel Sambuc  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34f4a2713aSLionel Sambuc  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35f4a2713aSLionel Sambuc  * SUCH DAMAGE.
36f4a2713aSLionel Sambuc  *
37f4a2713aSLionel Sambuc  *	@(#)cclass.h	8.3 (Berkeley) 3/20/94
38f4a2713aSLionel Sambuc  */
39f4a2713aSLionel Sambuc 
40*0a6a1f1dSLionel Sambuc #ifndef LLVM_SUPPORT_REGCCLASS_H
41*0a6a1f1dSLionel Sambuc #define LLVM_SUPPORT_REGCCLASS_H
42*0a6a1f1dSLionel Sambuc 
43f4a2713aSLionel Sambuc /* character-class table */
44f4a2713aSLionel Sambuc static struct cclass {
45f4a2713aSLionel Sambuc 	const char *name;
46f4a2713aSLionel Sambuc 	const char *chars;
47f4a2713aSLionel Sambuc 	const char *multis;
48f4a2713aSLionel Sambuc } cclasses[] = {
49f4a2713aSLionel Sambuc 	{ "alnum",	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
50f4a2713aSLionel Sambuc 0123456789",				""} ,
51f4a2713aSLionel Sambuc 	{ "alpha",	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",
52f4a2713aSLionel Sambuc 					""} ,
53f4a2713aSLionel Sambuc 	{ "blank",	" \t",		""} ,
54f4a2713aSLionel Sambuc 	{ "cntrl",	"\007\b\t\n\v\f\r\1\2\3\4\5\6\16\17\20\21\22\23\24\
55f4a2713aSLionel Sambuc \25\26\27\30\31\32\33\34\35\36\37\177",	""} ,
56f4a2713aSLionel Sambuc 	{ "digit",	"0123456789",	""} ,
57f4a2713aSLionel Sambuc 	{ "graph",	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
58f4a2713aSLionel Sambuc 0123456789!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
59f4a2713aSLionel Sambuc 					""} ,
60f4a2713aSLionel Sambuc 	{ "lower",	"abcdefghijklmnopqrstuvwxyz",
61f4a2713aSLionel Sambuc 					""} ,
62f4a2713aSLionel Sambuc 	{ "print",	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
63f4a2713aSLionel Sambuc 0123456789!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~ ",
64f4a2713aSLionel Sambuc 					""} ,
65f4a2713aSLionel Sambuc 	{ "punct",	"!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
66f4a2713aSLionel Sambuc 					""} ,
67f4a2713aSLionel Sambuc 	{ "space",	"\t\n\v\f\r ",	""} ,
68f4a2713aSLionel Sambuc 	{ "upper",	"ABCDEFGHIJKLMNOPQRSTUVWXYZ",
69f4a2713aSLionel Sambuc 					""} ,
70f4a2713aSLionel Sambuc 	{ "xdigit",	"0123456789ABCDEFabcdef",
71f4a2713aSLionel Sambuc 					""} ,
72f4a2713aSLionel Sambuc 	{ NULL,		0,		"" }
73f4a2713aSLionel Sambuc };
74*0a6a1f1dSLionel Sambuc 
75*0a6a1f1dSLionel Sambuc #endif
76