]> git.ipfire.org Git - thirdparty/bash.git/blob - y.tab.h
bash-5.2 distribution sources and documentation
[thirdparty/bash.git] / y.tab.h
1 /* A Bison parser, made by GNU Bison 3.8.2. */
2
3 /* Bison interface for Yacc-like parsers in C
4
5 Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
6 Inc.
7
8 This program is free software: you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation, either version 3 of the License, or
11 (at your option) any later version.
12
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
17
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <https://www.gnu.org/licenses/>. */
20
21 /* As a special exception, you may create a larger work that contains
22 part or all of the Bison parser skeleton and distribute that work
23 under terms of your choice, so long as that work isn't itself a
24 parser generator using the skeleton or a modified version thereof
25 as a parser skeleton. Alternatively, if you modify or redistribute
26 the parser skeleton itself, you may (at your option) remove this
27 special exception, which will cause the skeleton and the resulting
28 Bison output files to be licensed under the GNU General Public
29 License without this special exception.
30
31 This special exception was added by the Free Software Foundation in
32 version 2.2 of Bison. */
33
34 /* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
35 especially those whose name start with YY_ or yy_. They are
36 private implementation details that can be changed or removed. */
37
38 #ifndef YY_YY_Y_TAB_H_INCLUDED
39 # define YY_YY_Y_TAB_H_INCLUDED
40 /* Debug traces. */
41 #ifndef YYDEBUG
42 # define YYDEBUG 0
43 #endif
44 #if YYDEBUG
45 extern int yydebug;
46 #endif
47
48 /* Token kinds. */
49 #ifndef YYTOKENTYPE
50 # define YYTOKENTYPE
51 enum yytokentype
52 {
53 YYEMPTY = -2,
54 YYEOF = 0, /* "end of file" */
55 YYerror = 256, /* error */
56 YYUNDEF = 257, /* "invalid token" */
57 IF = 258, /* IF */
58 THEN = 259, /* THEN */
59 ELSE = 260, /* ELSE */
60 ELIF = 261, /* ELIF */
61 FI = 262, /* FI */
62 CASE = 263, /* CASE */
63 ESAC = 264, /* ESAC */
64 FOR = 265, /* FOR */
65 SELECT = 266, /* SELECT */
66 WHILE = 267, /* WHILE */
67 UNTIL = 268, /* UNTIL */
68 DO = 269, /* DO */
69 DONE = 270, /* DONE */
70 FUNCTION = 271, /* FUNCTION */
71 COPROC = 272, /* COPROC */
72 COND_START = 273, /* COND_START */
73 COND_END = 274, /* COND_END */
74 COND_ERROR = 275, /* COND_ERROR */
75 IN = 276, /* IN */
76 BANG = 277, /* BANG */
77 TIME = 278, /* TIME */
78 TIMEOPT = 279, /* TIMEOPT */
79 TIMEIGN = 280, /* TIMEIGN */
80 WORD = 281, /* WORD */
81 ASSIGNMENT_WORD = 282, /* ASSIGNMENT_WORD */
82 REDIR_WORD = 283, /* REDIR_WORD */
83 NUMBER = 284, /* NUMBER */
84 ARITH_CMD = 285, /* ARITH_CMD */
85 ARITH_FOR_EXPRS = 286, /* ARITH_FOR_EXPRS */
86 COND_CMD = 287, /* COND_CMD */
87 AND_AND = 288, /* AND_AND */
88 OR_OR = 289, /* OR_OR */
89 GREATER_GREATER = 290, /* GREATER_GREATER */
90 LESS_LESS = 291, /* LESS_LESS */
91 LESS_AND = 292, /* LESS_AND */
92 LESS_LESS_LESS = 293, /* LESS_LESS_LESS */
93 GREATER_AND = 294, /* GREATER_AND */
94 SEMI_SEMI = 295, /* SEMI_SEMI */
95 SEMI_AND = 296, /* SEMI_AND */
96 SEMI_SEMI_AND = 297, /* SEMI_SEMI_AND */
97 LESS_LESS_MINUS = 298, /* LESS_LESS_MINUS */
98 AND_GREATER = 299, /* AND_GREATER */
99 AND_GREATER_GREATER = 300, /* AND_GREATER_GREATER */
100 LESS_GREATER = 301, /* LESS_GREATER */
101 GREATER_BAR = 302, /* GREATER_BAR */
102 BAR_AND = 303, /* BAR_AND */
103 DOLPAREN = 304, /* DOLPAREN */
104 yacc_EOF = 305 /* yacc_EOF */
105 };
106 typedef enum yytokentype yytoken_kind_t;
107 #endif
108 /* Token kinds. */
109 #define YYEMPTY -2
110 #define YYEOF 0
111 #define YYerror 256
112 #define YYUNDEF 257
113 #define IF 258
114 #define THEN 259
115 #define ELSE 260
116 #define ELIF 261
117 #define FI 262
118 #define CASE 263
119 #define ESAC 264
120 #define FOR 265
121 #define SELECT 266
122 #define WHILE 267
123 #define UNTIL 268
124 #define DO 269
125 #define DONE 270
126 #define FUNCTION 271
127 #define COPROC 272
128 #define COND_START 273
129 #define COND_END 274
130 #define COND_ERROR 275
131 #define IN 276
132 #define BANG 277
133 #define TIME 278
134 #define TIMEOPT 279
135 #define TIMEIGN 280
136 #define WORD 281
137 #define ASSIGNMENT_WORD 282
138 #define REDIR_WORD 283
139 #define NUMBER 284
140 #define ARITH_CMD 285
141 #define ARITH_FOR_EXPRS 286
142 #define COND_CMD 287
143 #define AND_AND 288
144 #define OR_OR 289
145 #define GREATER_GREATER 290
146 #define LESS_LESS 291
147 #define LESS_AND 292
148 #define LESS_LESS_LESS 293
149 #define GREATER_AND 294
150 #define SEMI_SEMI 295
151 #define SEMI_AND 296
152 #define SEMI_SEMI_AND 297
153 #define LESS_LESS_MINUS 298
154 #define AND_GREATER 299
155 #define AND_GREATER_GREATER 300
156 #define LESS_GREATER 301
157 #define GREATER_BAR 302
158 #define BAR_AND 303
159 #define DOLPAREN 304
160 #define yacc_EOF 305
161
162 /* Value type. */
163 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
164 union YYSTYPE
165 {
166 #line 338 "/usr/local/src/chet/src/bash/src/parse.y"
167
168 WORD_DESC *word; /* the word that we read. */
169 int number; /* the number that we read. */
170 WORD_LIST *word_list;
171 COMMAND *command;
172 REDIRECT *redirect;
173 ELEMENT element;
174 PATTERN_LIST *pattern;
175
176 #line 177 "y.tab.h"
177
178 };
179 typedef union YYSTYPE YYSTYPE;
180 # define YYSTYPE_IS_TRIVIAL 1
181 # define YYSTYPE_IS_DECLARED 1
182 #endif
183
184
185 extern YYSTYPE yylval;
186
187
188 int yyparse (void);
189
190
191 #endif /* !YY_YY_Y_TAB_H_INCLUDED */