xref: /dflybsd-src/lib/libc/tre-regex/cname.h (revision c66c7e2fb8d0d28477d550f1d2a50c4677d547ff)
16af9a77bSJohn Marino /*-
26af9a77bSJohn Marino  * Copyright (c) 1992, 1993, 1994 Henry Spencer.
36af9a77bSJohn Marino  * Copyright (c) 1992, 1993, 1994
46af9a77bSJohn Marino  *	The Regents of the University of California.  All rights reserved.
56af9a77bSJohn Marino  *
66af9a77bSJohn Marino  * This code is derived from software contributed to Berkeley by
76af9a77bSJohn Marino  * Henry Spencer.
86af9a77bSJohn Marino  *
96af9a77bSJohn Marino  * Redistribution and use in source and binary forms, with or without
106af9a77bSJohn Marino  * modification, are permitted provided that the following conditions
116af9a77bSJohn Marino  * are met:
126af9a77bSJohn Marino  * 1. Redistributions of source code must retain the above copyright
136af9a77bSJohn Marino  *    notice, this list of conditions and the following disclaimer.
146af9a77bSJohn Marino  * 2. Redistributions in binary form must reproduce the above copyright
156af9a77bSJohn Marino  *    notice, this list of conditions and the following disclaimer in the
166af9a77bSJohn Marino  *    documentation and/or other materials provided with the distribution.
17*c66c7e2fSzrj  * 3. Neither the name of the University nor the names of its contributors
186af9a77bSJohn Marino  *    may be used to endorse or promote products derived from this software
196af9a77bSJohn Marino  *    without specific prior written permission.
206af9a77bSJohn Marino  *
216af9a77bSJohn Marino  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
226af9a77bSJohn Marino  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
236af9a77bSJohn Marino  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
246af9a77bSJohn Marino  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
256af9a77bSJohn Marino  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
266af9a77bSJohn Marino  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
276af9a77bSJohn Marino  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
286af9a77bSJohn Marino  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
296af9a77bSJohn Marino  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
306af9a77bSJohn Marino  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
316af9a77bSJohn Marino  * SUCH DAMAGE.
326af9a77bSJohn Marino  *
336af9a77bSJohn Marino  *	@(#)cname.h	8.3 (Berkeley) 3/20/94
346af9a77bSJohn Marino  * $FreeBSD: src/lib/libc/regex/cname.h,v 1.4 2007/01/09 00:28:04 imp Exp $
356af9a77bSJohn Marino  */
366af9a77bSJohn Marino 
376af9a77bSJohn Marino /* character-name table */
386af9a77bSJohn Marino static const struct cname {
396af9a77bSJohn Marino 	const wchar_t *name;
406af9a77bSJohn Marino 	wchar_t code;
416af9a77bSJohn Marino } cnames[] = {
426af9a77bSJohn Marino 	{L"",				(wchar_t)-1}, /* sentinel */
436af9a77bSJohn Marino 	{L"ACK",			L'\006'},
446af9a77bSJohn Marino 	{L"BEL",			L'\007'},
456af9a77bSJohn Marino 	{L"BS",				L'\010'},
466af9a77bSJohn Marino 	{L"CAN",			L'\030'},
476af9a77bSJohn Marino 	{L"CR",				L'\015'},
486af9a77bSJohn Marino 	{L"DC1",			L'\021'},
496af9a77bSJohn Marino 	{L"DC2",			L'\022'},
506af9a77bSJohn Marino 	{L"DC3",			L'\023'},
516af9a77bSJohn Marino 	{L"DC4",			L'\024'},
526af9a77bSJohn Marino 	{L"DEL",			L'\177'},
536af9a77bSJohn Marino 	{L"DLE",			L'\020'},
546af9a77bSJohn Marino 	{L"EM",				L'\031'},
556af9a77bSJohn Marino 	{L"ENQ",			L'\005'},
566af9a77bSJohn Marino 	{L"EOT",			L'\004'},
576af9a77bSJohn Marino 	{L"ESC",			L'\033'},
586af9a77bSJohn Marino 	{L"ETB",			L'\027'},
596af9a77bSJohn Marino 	{L"ETX",			L'\003'},
606af9a77bSJohn Marino 	{L"FF",				L'\014'},
616af9a77bSJohn Marino 	{L"FS",				L'\034'},
626af9a77bSJohn Marino 	{L"GS",				L'\035'},
636af9a77bSJohn Marino 	{L"HT",				L'\011'},
646af9a77bSJohn Marino 	{L"IS1",			L'\037'},
656af9a77bSJohn Marino 	{L"IS2",			L'\036'},
666af9a77bSJohn Marino 	{L"IS3",			L'\035'},
676af9a77bSJohn Marino 	{L"IS4",			L'\034'},
686af9a77bSJohn Marino 	{L"LF",				L'\012'},
696af9a77bSJohn Marino 	{L"NAK",			L'\025'},
706af9a77bSJohn Marino 	{L"NUL",			L'\0'},
716af9a77bSJohn Marino 	{L"RS",				L'\036'},
726af9a77bSJohn Marino 	{L"SI",				L'\017'},
736af9a77bSJohn Marino 	{L"SO",				L'\016'},
746af9a77bSJohn Marino 	{L"SOH",			L'\001'},
756af9a77bSJohn Marino 	{L"STX",			L'\002'},
766af9a77bSJohn Marino 	{L"SUB",			L'\032'},
776af9a77bSJohn Marino 	{L"SYN",			L'\026'},
786af9a77bSJohn Marino 	{L"US",				L'\037'},
796af9a77bSJohn Marino 	{L"VT",				L'\013'},
806af9a77bSJohn Marino 	{L"alert",			L'\007'},
816af9a77bSJohn Marino 	{L"ampersand",			L'&'},
826af9a77bSJohn Marino 	{L"apostrophe",			L'\''},
836af9a77bSJohn Marino 	{L"asterisk",			L'*'},
846af9a77bSJohn Marino 	{L"backslash",			L'\\'},
856af9a77bSJohn Marino 	{L"backspace",			L'\b'},
866af9a77bSJohn Marino 	{L"carriage-return",		L'\r'},
876af9a77bSJohn Marino 	{L"circumflex",			L'^'},
886af9a77bSJohn Marino 	{L"circumflex-accent",		L'^'},
896af9a77bSJohn Marino 	{L"colon",			L':'},
906af9a77bSJohn Marino 	{L"comma",			L','},
916af9a77bSJohn Marino 	{L"commercial-at",		L'@'},
926af9a77bSJohn Marino 	{L"dollar-sign",		L'$'},
936af9a77bSJohn Marino 	{L"eight",			L'8'},
946af9a77bSJohn Marino 	{L"equals-sign",		L'='},
956af9a77bSJohn Marino 	{L"exclamation-mark",		L'!'},
966af9a77bSJohn Marino 	{L"five",			L'5'},
976af9a77bSJohn Marino 	{L"form-feed",			L'\f'},
986af9a77bSJohn Marino 	{L"four",			L'4'},
996af9a77bSJohn Marino 	{L"full-stop",			L'.'},
1006af9a77bSJohn Marino 	{L"grave-accent",		L'`'},
1016af9a77bSJohn Marino 	{L"greater-than-sign",		L'>'},
1026af9a77bSJohn Marino 	{L"hyphen",			L'-'},
1036af9a77bSJohn Marino 	{L"hyphen-minus",		L'-'},
1046af9a77bSJohn Marino 	{L"left-brace",			L'{'},
1056af9a77bSJohn Marino 	{L"left-curly-bracket",		L'{'},
1066af9a77bSJohn Marino 	{L"left-parenthesis",		L'('},
1076af9a77bSJohn Marino 	{L"left-square-bracket",	L'['},
1086af9a77bSJohn Marino 	{L"less-than-sign",		L'<'},
1096af9a77bSJohn Marino 	{L"low-line",			L'_'},
1106af9a77bSJohn Marino 	{L"newline",			L'\n'},
1116af9a77bSJohn Marino 	{L"nine",			L'9'},
1126af9a77bSJohn Marino 	{L"number-sign",		L'#'},
1136af9a77bSJohn Marino 	{L"one",			L'1'},
1146af9a77bSJohn Marino 	{L"percent-sign",		L'%'},
1156af9a77bSJohn Marino 	{L"period",			L'.'},
1166af9a77bSJohn Marino 	{L"plus-sign",			L'+'},
1176af9a77bSJohn Marino 	{L"question-mark",		L'?'},
1186af9a77bSJohn Marino 	{L"quotation-mark",		L'"'},
1196af9a77bSJohn Marino 	{L"reverse-solidus",		L'\\'},
1206af9a77bSJohn Marino 	{L"right-brace",		L'}'},
1216af9a77bSJohn Marino 	{L"right-curly-bracket",	L'}'},
1226af9a77bSJohn Marino 	{L"right-parenthesis",		L')'},
1236af9a77bSJohn Marino 	{L"right-square-bracket",	L']'},
1246af9a77bSJohn Marino 	{L"semicolon",			L';'},
1256af9a77bSJohn Marino 	{L"seven",      		L'7'},
1266af9a77bSJohn Marino 	{L"six",			L'6'},
1276af9a77bSJohn Marino 	{L"slash",			L'/'},
1286af9a77bSJohn Marino 	{L"solidus",			L'/'},
1296af9a77bSJohn Marino 	{L"space",			L' '},
1306af9a77bSJohn Marino 	{L"tab",			L'\t'},
1316af9a77bSJohn Marino 	{L"three",			L'3'},
1326af9a77bSJohn Marino 	{L"tilde",			L'~'},
1336af9a77bSJohn Marino 	{L"two",			L'2'},
1346af9a77bSJohn Marino 	{L"underscore",			L'_'},
1356af9a77bSJohn Marino 	{L"vertical-line",		L'|'},
1366af9a77bSJohn Marino 	{L"vertical-tab",		L'\v'},
1376af9a77bSJohn Marino 	{L"zero",			L'0'},
1386af9a77bSJohn Marino };
1396af9a77bSJohn Marino 
1406af9a77bSJohn Marino #define NCNAMES		(sizeof(cnames) / sizeof(*cnames))
141