]>
Commit | Line | Data |
---|---|---|
2dc8862b | 1 | /* A Bison parser, made by GNU Bison 2.7.1127-02879-dirty. */ |
1c7b7e1d | 2 | |
3c9b20ff | 3 | /* Bison interface for Yacc-like parsers in C |
086fd113 | 4 | |
3f4bc2c1 | 5 | Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc. |
086fd113 | 6 | |
f16b0819 | 7 | This program is free software: you can redistribute it and/or modify |
04b6e11e | 8 | it under the terms of the GNU General Public License as published by |
f16b0819 PE |
9 | the Free Software Foundation, either version 3 of the License, or |
10 | (at your option) any later version. | |
086fd113 | 11 | |
04b6e11e PE |
12 | This program is distributed in the hope that it will be useful, |
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | GNU General Public License for more details. | |
086fd113 | 16 | |
04b6e11e | 17 | You should have received a copy of the GNU General Public License |
f16b0819 | 18 | along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
04b6e11e | 19 | |
04c12cb8 PE |
20 | /* As a special exception, you may create a larger work that contains |
21 | part or all of the Bison parser skeleton and distribute that work | |
22 | under terms of your choice, so long as that work isn't itself a | |
23 | parser generator using the skeleton or a modified version thereof | |
24 | as a parser skeleton. Alternatively, if you modify or redistribute | |
25 | the parser skeleton itself, you may (at your option) remove this | |
26 | special exception, which will cause the skeleton and the resulting | |
27 | Bison output files to be licensed under the GNU General Public | |
28 | License without this special exception. | |
086fd113 | 29 | |
04c12cb8 PE |
30 | This special exception was added by the Free Software Foundation in |
31 | version 2.2 of Bison. */ | |
dda2c1ad | 32 | |
bb8e56ff TR |
33 | #ifndef YY_GRAM_SRC_PARSE_GRAM_H_INCLUDED |
34 | # define YY_GRAM_SRC_PARSE_GRAM_H_INCLUDED | |
0a9042a6 | 35 | /* Debug traces. */ |
8d9cffff AD |
36 | #ifndef GRAM_DEBUG |
37 | # if defined YYDEBUG | |
dda2c1ad | 38 | #if YYDEBUG |
8d9cffff AD |
39 | # define GRAM_DEBUG 1 |
40 | # else | |
41 | # define GRAM_DEBUG 0 | |
42 | # endif | |
43 | # else /* ! defined YYDEBUG */ | |
44 | # define GRAM_DEBUG 1 | |
45 | # endif /* ! defined YYDEBUG */ | |
46 | #endif /* ! defined GRAM_DEBUG */ | |
47 | #if GRAM_DEBUG | |
dda2c1ad AD |
48 | extern int gram_debug; |
49 | #endif | |
b18cdd91 | 50 | /* "%code requires" blocks. */ |
de5fb744 | 51 | #line 218 "src/parse-gram.y" /* yacc.c:1931 */ |
b18cdd91 | 52 | |
b18cdd91 AD |
53 | typedef enum |
54 | { | |
dd875058 | 55 | param_none = 0, |
b18cdd91 AD |
56 | param_lex = 1 << 0, |
57 | param_parse = 1 << 1, | |
58 | param_both = param_lex | param_parse | |
59 | } param_type; | |
b18cdd91 | 60 | |
de5fb744 AD |
61 | #line 649 "src/parse-gram.y" /* yacc.c:1931 */ |
62 | #include "muscle-tab.h" | |
b18cdd91 | 63 | |
de5fb744 | 64 | #line 65 "src/parse-gram.h" /* yacc.c:1931 */ |
04b6e11e | 65 | |
0a9042a6 | 66 | /* Token type. */ |
8d9cffff AD |
67 | #ifndef GRAM_TOKENTYPE |
68 | # define GRAM_TOKENTYPE | |
8d9cffff | 69 | enum gram_tokentype |
a9439670 AD |
70 | { |
71 | GRAM_EOF = 0, | |
72 | STRING = 258, | |
8a928349 AD |
73 | PERCENT_TOKEN = 259, |
74 | PERCENT_NTERM = 260, | |
75 | PERCENT_TYPE = 261, | |
76 | PERCENT_DESTRUCTOR = 262, | |
77 | PERCENT_PRINTER = 263, | |
78 | PERCENT_LEFT = 264, | |
79 | PERCENT_RIGHT = 265, | |
80 | PERCENT_NONASSOC = 266, | |
81 | PERCENT_PRECEDENCE = 267, | |
82 | PERCENT_PREC = 268, | |
83 | PERCENT_DPREC = 269, | |
84 | PERCENT_MERGE = 270, | |
85 | PERCENT_CODE = 271, | |
86 | PERCENT_DEFAULT_PREC = 272, | |
87 | PERCENT_DEFINE = 273, | |
88 | PERCENT_DEFINES = 274, | |
89 | PERCENT_ERROR_VERBOSE = 275, | |
90 | PERCENT_EXPECT = 276, | |
91 | PERCENT_EXPECT_RR = 277, | |
92 | PERCENT_FLAG = 278, | |
93 | PERCENT_FILE_PREFIX = 279, | |
94 | PERCENT_GLR_PARSER = 280, | |
95 | PERCENT_INITIAL_ACTION = 281, | |
96 | PERCENT_LANGUAGE = 282, | |
97 | PERCENT_NAME_PREFIX = 283, | |
98 | PERCENT_NO_DEFAULT_PREC = 284, | |
99 | PERCENT_NO_LINES = 285, | |
100 | PERCENT_NONDETERMINISTIC_PARSER = 286, | |
101 | PERCENT_OUTPUT = 287, | |
102 | PERCENT_REQUIRE = 288, | |
103 | PERCENT_SKELETON = 289, | |
104 | PERCENT_START = 290, | |
105 | PERCENT_TOKEN_TABLE = 291, | |
106 | PERCENT_VERBOSE = 292, | |
107 | PERCENT_YACC = 293, | |
108 | BRACED_CODE = 294, | |
109 | BRACED_PREDICATE = 295, | |
110 | BRACKETED_ID = 296, | |
111 | CHAR = 297, | |
112 | EPILOGUE = 298, | |
113 | EQUAL = 299, | |
114 | ID = 300, | |
115 | ID_COLON = 301, | |
116 | PERCENT_PERCENT = 302, | |
117 | PIPE = 303, | |
118 | PROLOGUE = 304, | |
119 | SEMICOLON = 305, | |
120 | TAG = 306, | |
121 | TAG_ANY = 307, | |
122 | TAG_NONE = 308, | |
123 | INT = 309, | |
a9439670 | 124 | PERCENT_PARAM = 310, |
8ecac08f AD |
125 | PERCENT_UNION = 311, |
126 | PERCENT_EMPTY = 312 | |
a9439670 | 127 | }; |
ae7453f2 | 128 | #endif |
8f7ebfc8 | 129 | |
0a9042a6 | 130 | /* Value type. */ |
8d9cffff | 131 | #if ! defined GRAM_STYPE && ! defined GRAM_STYPE_IS_DECLARED |
0a9042a6 AD |
132 | typedef union GRAM_STYPE GRAM_STYPE; |
133 | union GRAM_STYPE | |
136a0f76 | 134 | { |
de5fb744 | 135 | #line 170 "src/parse-gram.y" /* yacc.c:1931 */ |
8a928349 | 136 | unsigned char character; |
de5fb744 | 137 | #line 177 "src/parse-gram.y" /* yacc.c:1931 */ |
50a33993 | 138 | |
b18cdd91 AD |
139 | char *code; |
140 | char const *chars; | |
b18cdd91 | 141 | |
de5fb744 | 142 | #line 188 "src/parse-gram.y" /* yacc.c:1931 */ |
8a928349 | 143 | uniqstr uniqstr; |
de5fb744 | 144 | #line 196 "src/parse-gram.y" /* yacc.c:1931 */ |
8a928349 | 145 | int integer; |
de5fb744 | 146 | #line 200 "src/parse-gram.y" /* yacc.c:1931 */ |
8a928349 | 147 | symbol *symbol; |
de5fb744 | 148 | #line 205 "src/parse-gram.y" /* yacc.c:1931 */ |
8a928349 | 149 | assoc assoc; |
de5fb744 | 150 | #line 208 "src/parse-gram.y" /* yacc.c:1931 */ |
8a928349 | 151 | symbol_list *list; |
de5fb744 | 152 | #line 211 "src/parse-gram.y" /* yacc.c:1931 */ |
8a928349 | 153 | named_ref *named_ref; |
de5fb744 | 154 | #line 238 "src/parse-gram.y" /* yacc.c:1931 */ |
8a928349 AD |
155 | param_type param; |
156 | #line 413 "src/parse-gram.y" /* yacc.c:1931 */ | |
0294b130 | 157 | code_props_type code_type; |
de5fb744 | 158 | #line 651 "src/parse-gram.y" /* yacc.c:1931 */ |
7ecec4dd | 159 | |
de5fb744 AD |
160 | struct |
161 | { | |
162 | char const *chars; | |
163 | muscle_kind kind; | |
164 | } value; | |
165 | ||
166 | ||
167 | #line 168 "src/parse-gram.h" /* yacc.c:1931 */ | |
0a9042a6 | 168 | }; |
8d9cffff AD |
169 | # define GRAM_STYPE_IS_TRIVIAL 1 |
170 | # define GRAM_STYPE_IS_DECLARED 1 | |
e9955c83 AD |
171 | #endif |
172 | ||
0a9042a6 | 173 | /* Location type. */ |
8d9cffff | 174 | #if ! defined GRAM_LTYPE && ! defined GRAM_LTYPE_IS_DECLARED |
0a9042a6 AD |
175 | typedef struct GRAM_LTYPE GRAM_LTYPE; |
176 | struct GRAM_LTYPE | |
e9955c83 AD |
177 | { |
178 | int first_line; | |
179 | int first_column; | |
180 | int last_line; | |
181 | int last_column; | |
0a9042a6 | 182 | }; |
8d9cffff AD |
183 | # define GRAM_LTYPE_IS_DECLARED 1 |
184 | # define GRAM_LTYPE_IS_TRIVIAL 1 | |
e9955c83 AD |
185 | #endif |
186 | ||
415b8823 | 187 | |
0a9042a6 | 188 | |
dda2c1ad | 189 | int gram_parse (void); |
e9955c83 | 190 | |
bb8e56ff | 191 | #endif /* !YY_GRAM_SRC_PARSE_GRAM_H_INCLUDED */ |