1 /* A Bison parser, made by GNU Bison 3.6.4. */
3 /* Bison interface for Yacc-like parsers in C
5 Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software Foundation,
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.
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.
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <http://www.gnu.org/licenses/>. */
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.
31 This special exception was added by the Free Software Foundation in
32 version 2.2 of Bison. */
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. */
38 #ifndef YY_YY_Y_TAB_H_INCLUDED
39 # define YY_YY_Y_TAB_H_INCLUDED
54 YYEOF
= 0, /* "end of file" */
55 YYerror
= 256, /* error */
56 YYUNDEF
= 257, /* "invalid token" */
58 THEN
= 259, /* THEN */
59 ELSE
= 260, /* ELSE */
60 ELIF
= 261, /* ELIF */
62 CASE
= 263, /* CASE */
63 ESAC
= 264, /* ESAC */
65 SELECT
= 266, /* SELECT */
66 WHILE
= 267, /* WHILE */
67 UNTIL
= 268, /* UNTIL */
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 */
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 yacc_EOF
= 304 /* yacc_EOF */
105 typedef enum yytokentype yytoken_kind_t
;
126 #define COND_START 273
128 #define COND_ERROR 275
135 #define ASSIGNMENT_WORD 282
136 #define REDIR_WORD 283
138 #define ARITH_CMD 285
139 #define ARITH_FOR_EXPRS 286
143 #define GREATER_GREATER 290
144 #define LESS_LESS 291
146 #define LESS_LESS_LESS 293
147 #define GREATER_AND 294
148 #define SEMI_SEMI 295
150 #define SEMI_SEMI_AND 297
151 #define LESS_LESS_MINUS 298
152 #define AND_GREATER 299
153 #define AND_GREATER_GREATER 300
154 #define LESS_GREATER 301
155 #define GREATER_BAR 302
160 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
163 #line 328 "/Users/chet/src/bash/src/parse.y"
165 WORD_DESC
*word
; /* the word that we read. */
166 int number
; /* the number that we read. */
167 WORD_LIST
*word_list
;
171 PATTERN_LIST
*pattern
;
176 typedef union YYSTYPE YYSTYPE
;
177 # define YYSTYPE_IS_TRIVIAL 1
178 # define YYSTYPE_IS_DECLARED 1
182 extern YYSTYPE yylval
;
186 #endif /* !YY_YY_Y_TAB_H_INCLUDED */