Graphviz 12.0.1~dev.20240716.0800
Loading...
Searching...
No Matches
exparse.h
Go to the documentation of this file.
1/* A Bison parser, made by GNU Bison 3.5.1. */
2
3/* Bison interface for Yacc-like parsers in C
4
5 Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 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 <http://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/* Undocumented macros, especially those whose name start with YY_,
35 are private implementation details. Do not rely on them. */
36
37#ifndef YY_EX_EXPARSE_H_INCLUDED
38# define YY_EX_EXPARSE_H_INCLUDED
39/* Debug traces. */
40#ifndef EX_DEBUG
41# if defined YYDEBUG
42#if YYDEBUG
43# define EX_DEBUG 1
44# else
45# define EX_DEBUG 0
46# endif
47# else /* ! defined YYDEBUG */
48# define EX_DEBUG 1
49# endif /* ! defined YYDEBUG */
50#endif /* ! defined EX_DEBUG */
51#if EX_DEBUG
52extern int ex_debug;
53#endif
54
55/* Token type. */
56#ifndef EX_TOKENTYPE
57# define EX_TOKENTYPE
59 {
60 MINTOKEN = 258,
61 INTEGER = 259,
62 UNSIGNED = 260,
63 CHARACTER = 261,
64 FLOATING = 262,
65 STRING = 263,
66 VOIDTYPE = 264,
67 STATIC = 265,
68 ADDRESS = 266,
69 ARRAY = 267,
70 BREAK = 268,
71 CALL = 269,
72 CASE = 270,
73 CONSTANT = 271,
74 CONTINUE = 272,
75 DECLARE = 273,
76 DEFAULT = 274,
77 DYNAMIC = 275,
78 ELSE = 276,
79 EXIT = 277,
80 FOR = 278,
81 FUNCTION = 279,
82 GSUB = 280,
83 ITERATE = 281,
84 ITERATER = 282,
85 ID = 283,
86 IF = 284,
87 LABEL = 285,
88 MEMBER = 286,
89 NAME = 287,
90 POS = 288,
91 PRAGMA = 289,
92 PRE = 290,
93 PRINT = 291,
94 PRINTF = 292,
95 PROCEDURE = 293,
96 QUERY = 294,
97 RAND = 295,
98 RETURN = 296,
99 SCANF = 297,
100 SPLIT = 298,
101 SPRINTF = 299,
102 SRAND = 300,
103 SSCANF = 301,
104 SUB = 302,
105 SUBSTR = 303,
106 SWITCH = 304,
107 TOKENS = 305,
108 UNSET = 306,
109 WHILE = 307,
110 F2I = 308,
111 F2S = 309,
112 I2F = 310,
113 I2S = 311,
114 S2B = 312,
115 S2F = 313,
116 S2I = 314,
117 F2X = 315,
118 I2X = 316,
119 S2X = 317,
120 X2F = 318,
121 X2I = 319,
122 X2S = 320,
123 X2X = 321,
124 XPRINT = 322,
125 OR = 323,
126 AND = 324,
127 EQ = 325,
128 NE = 326,
129 LE = 327,
130 GE = 328,
131 LSH = 329,
132 RSH = 330,
133 IN_OP = 331,
134 UNARY = 332,
135 INC = 333,
136 DEC = 334,
137 CAST = 335,
138 MAXTOKEN = 336
139 };
140#endif
141/* Tokens. */
142#define MINTOKEN 258
143#define INTEGER 259
144#define UNSIGNED 260
145#define CHARACTER 261
146#define FLOATING 262
147#define STRING 263
148#define VOIDTYPE 264
149#define STATIC 265
150#define ADDRESS 266
151#define ARRAY 267
152#define BREAK 268
153#define CALL 269
154#define CASE 270
155#define CONSTANT 271
156#define CONTINUE 272
157#define DECLARE 273
158#define DEFAULT 274
159#define DYNAMIC 275
160#define ELSE 276
161#define EXIT 277
162#define FOR 278
163#define FUNCTION 279
164#define GSUB 280
165#define ITERATE 281
166#define ITERATER 282
167#define ID 283
168#define IF 284
169#define LABEL 285
170#define MEMBER 286
171#define NAME 287
172#define POS 288
173#define PRAGMA 289
174#define PRE 290
175#define PRINT 291
176#define PRINTF 292
177#define PROCEDURE 293
178#define QUERY 294
179#define RAND 295
180#define RETURN 296
181#define SCANF 297
182#define SPLIT 298
183#define SPRINTF 299
184#define SRAND 300
185#define SSCANF 301
186#define SUB 302
187#define SUBSTR 303
188#define SWITCH 304
189#define TOKENS 305
190#define UNSET 306
191#define WHILE 307
192#define F2I 308
193#define F2S 309
194#define I2F 310
195#define I2S 311
196#define S2B 312
197#define S2F 313
198#define S2I 314
199#define F2X 315
200#define I2X 316
201#define S2X 317
202#define X2F 318
203#define X2I 319
204#define X2S 320
205#define X2X 321
206#define XPRINT 322
207#define OR 323
208#define AND 324
209#define EQ 325
210#define NE 326
211#define LE 327
212#define GE 328
213#define LSH 329
214#define RSH 330
215#define IN_OP 331
216#define UNARY 332
217#define INC 333
218#define DEC 334
219#define CAST 335
220#define MAXTOKEN 336
221
222/* Value type. */
223#if ! defined EX_STYPE && ! defined EX_STYPE_IS_DECLARED
224union EX_STYPE
225{
226#line 40 "../../lib/expr/exparse.y"
227
228 struct Exnode_s*expr;
229 double floating;
230 struct Exref_s* reference;
231 struct Exid_s* id;
232 long long integer;
233 int op;
234 char* string;
235
236#line 237 "exparse.h"
237
238};
239typedef union EX_STYPE EX_STYPE;
240# define EX_STYPE_IS_TRIVIAL 1
241# define EX_STYPE_IS_DECLARED 1
242#endif
243
244
245extern EX_STYPE ex_lval;
246
247int ex_parse (void);
248
249#endif /* !YY_EX_EXPARSE_H_INCLUDED */
ex_tokentype
Definition exparse.c:152
#define UNSIGNED
Definition exparse.h:144
#define ELSE
Definition exparse.h:160
#define LABEL
Definition exparse.h:169
#define STRING
Definition exparse.h:147
#define STATIC
Definition exparse.h:149
#define CHARACTER
Definition exparse.h:145
#define DYNAMIC
Definition exparse.h:159
#define SCANF
Definition exparse.h:181
#define F2S
Definition exparse.h:193
#define SSCANF
Definition exparse.h:185
#define RSH
Definition exparse.h:214
#define ADDRESS
Definition exparse.h:150
#define OR
Definition exparse.h:207
#define PRE
Definition exparse.h:174
#define GE
Definition exparse.h:212
#define MINTOKEN
Definition exparse.h:142
#define DEFAULT
Definition exparse.h:158
#define ITERATER
Definition exparse.h:166
#define NAME
Definition exparse.h:171
#define X2F
Definition exparse.h:202
#define S2X
Definition exparse.h:201
#define WHILE
Definition exparse.h:191
#define ITERATE
Definition exparse.h:165
#define MAXTOKEN
Definition exparse.h:220
#define NE
Definition exparse.h:210
#define SRAND
Definition exparse.h:184
#define S2I
Definition exparse.h:198
#define SUB
Definition exparse.h:186
#define POS
Definition exparse.h:172
#define LSH
Definition exparse.h:213
#define FLOATING
Definition exparse.h:146
#define FOR
Definition exparse.h:162
#define RETURN
Definition exparse.h:180
#define I2X
Definition exparse.h:200
#define IN_OP
Definition exparse.h:215
#define SUBSTR
Definition exparse.h:187
#define TOKENS
Definition exparse.h:189
#define VOIDTYPE
Definition exparse.h:148
#define ID
Definition exparse.h:167
#define RAND
Definition exparse.h:179
int ex_parse(void)
#define PRINT
Definition exparse.h:175
#define CAST
Definition exparse.h:219
#define I2F
Definition exparse.h:194
#define INTEGER
Definition exparse.h:143
#define SPRINTF
Definition exparse.h:183
#define I2S
Definition exparse.h:195
EX_STYPE ex_lval
#define CONSTANT
Definition exparse.h:155
#define LE
Definition exparse.h:211
#define MEMBER
Definition exparse.h:170
#define S2B
Definition exparse.h:196
#define CALL
Definition exparse.h:153
#define GSUB
Definition exparse.h:164
#define PRAGMA
Definition exparse.h:173
#define UNARY
Definition exparse.h:216
#define UNSET
Definition exparse.h:190
#define CONTINUE
Definition exparse.h:156
#define XPRINT
Definition exparse.h:206
#define F2I
Definition exparse.h:192
#define X2S
Definition exparse.h:204
#define SPLIT
Definition exparse.h:182
#define EQ
Definition exparse.h:209
#define BREAK
Definition exparse.h:152
#define S2F
Definition exparse.h:197
#define IF
Definition exparse.h:168
#define PROCEDURE
Definition exparse.h:177
#define SWITCH
Definition exparse.h:188
#define AND
Definition exparse.h:208
#define DECLARE
Definition exparse.h:157
#define X2X
Definition exparse.h:205
#define EXIT
Definition exparse.h:161
#define F2X
Definition exparse.h:199
#define X2I
Definition exparse.h:203
#define PRINTF
Definition exparse.h:176
#define QUERY
Definition exparse.h:178
#define FUNCTION
Definition exparse.h:163
#define CASE
Definition exparse.h:154
#define ARRAY
Definition exparse.h:151
#define INC
Definition exparse.h:217
#define DEC
Definition exparse.h:218
Definition expr.h:93
struct Exref_s * reference
Definition exparse.c:323
struct Exid_s * id
Definition exparse.c:324
char * string
Definition exparse.c:327
long long integer
Definition exparse.c:325
double floating
Definition exparse.c:322
struct Exnode_s * expr
Definition exparse.c:321
int op
Definition exparse.c:326