xref: /titanic_50/usr/src/lib/libshell/common/data/keywords.c (revision 3e14f97f673e8a630f076077de35afdd43dc1587)
1da2e3ebdSchin /***********************************************************************
2da2e3ebdSchin *                                                                      *
3da2e3ebdSchin *               This software is part of the ast package               *
4*3e14f97fSRoger A. Faulkner *          Copyright (c) 1982-2010 AT&T Intellectual Property          *
5da2e3ebdSchin *                      and is licensed under the                       *
6da2e3ebdSchin *                  Common Public License, Version 1.0                  *
77c2fbfb3SApril Chin *                    by AT&T Intellectual Property                     *
8da2e3ebdSchin *                                                                      *
9da2e3ebdSchin *                A copy of the License is available at                 *
10da2e3ebdSchin *            http://www.opensource.org/licenses/cpl1.0.txt             *
11da2e3ebdSchin *         (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9)         *
12da2e3ebdSchin *                                                                      *
13da2e3ebdSchin *              Information and Software Systems Research               *
14da2e3ebdSchin *                            AT&T Research                             *
15da2e3ebdSchin *                           Florham Park NJ                            *
16da2e3ebdSchin *                                                                      *
17da2e3ebdSchin *                  David Korn <dgk@research.att.com>                   *
18da2e3ebdSchin *                                                                      *
19da2e3ebdSchin ***********************************************************************/
20da2e3ebdSchin #pragma prototyped
21da2e3ebdSchin #include	"shtable.h"
22da2e3ebdSchin #include	<shell.h>
23da2e3ebdSchin #include	"shlex.h"
24da2e3ebdSchin #include	"FEATURE/options"
25da2e3ebdSchin 
26da2e3ebdSchin /*
27da2e3ebdSchin  * table of reserved words in shell language
28da2e3ebdSchin  * This list must be in in ascii sorted order
29da2e3ebdSchin  */
30da2e3ebdSchin 
31da2e3ebdSchin const Shtable_t shtab_reserved[] =
32da2e3ebdSchin {
33da2e3ebdSchin 		"!",		NOTSYM,
34da2e3ebdSchin 		"[[",		BTESTSYM,
35da2e3ebdSchin 		"case",		CASESYM,
36da2e3ebdSchin 		"do",		DOSYM,
37da2e3ebdSchin 		"done",		DONESYM,
38da2e3ebdSchin 		"elif",		ELIFSYM,
39da2e3ebdSchin 		"else",		ELSESYM,
40da2e3ebdSchin 		"esac",		ESACSYM,
41da2e3ebdSchin 		"fi",		FISYM,
42da2e3ebdSchin 		"for",		FORSYM,
43da2e3ebdSchin 		"function",	FUNCTSYM,
44da2e3ebdSchin 		"if",		IFSYM,
45da2e3ebdSchin 		"in",		INSYM,
46da2e3ebdSchin #if SHOPT_NAMESPACE
47da2e3ebdSchin 		"namespace",	NSPACESYM,
48da2e3ebdSchin #endif /* SHOPT_NAMESPACE */
49da2e3ebdSchin 		"select",	SELECTSYM,
50da2e3ebdSchin 		"then",		THENSYM,
51da2e3ebdSchin 		"time",		TIMESYM,
52da2e3ebdSchin 		"until",	UNTILSYM,
53da2e3ebdSchin 		"while",	WHILESYM,
54da2e3ebdSchin 		"{",		LBRACE,
55da2e3ebdSchin 		"}",		RBRACE,
56da2e3ebdSchin 		"",		0,
57da2e3ebdSchin };
58da2e3ebdSchin 
59da2e3ebdSchin const char	e_unexpected[]	= "unexpected";
60da2e3ebdSchin const char	e_unmatched[]	= "unmatched";
61da2e3ebdSchin const char	e_endoffile[]	= "end of file";
62da2e3ebdSchin const char	e_newline[]	= "newline";
63da2e3ebdSchin 
64