This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add a #! line to config_h.SH
[perl5.git] / perly.h
1 /* -*- buffer-read-only: t -*-
2    !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
3    This file is built by regen_perly.pl from perly.y.
4    Any changes made here will be lost!
5  */
6
7 #ifdef PERL_CORE
8 /* A Bison parser, made by GNU Bison 2.3.  */
9
10 /* Skeleton interface for Bison's Yacc-like parsers in C
11
12    Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
13    Free Software Foundation, Inc.
14
15    This program is free software; you can redistribute it and/or modify
16    it under the terms of the GNU General Public License as published by
17    the Free Software Foundation; either version 2, or (at your option)
18    any later version.
19
20    This program is distributed in the hope that it will be useful,
21    but WITHOUT ANY WARRANTY; without even the implied warranty of
22    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23    GNU General Public License for more details.
24
25    You should have received a copy of the GNU General Public License
26    along with this program; if not, write to the Free Software
27    Foundation, Inc., 51 Franklin Street, Fifth Floor,
28    Boston, MA 02110-1301, USA.  */
29
30 /* As a special exception, you may create a larger work that contains
31    part or all of the Bison parser skeleton and distribute that work
32    under terms of your choice, so long as that work isn't itself a
33    parser generator using the skeleton or a modified version thereof
34    as a parser skeleton.  Alternatively, if you modify or redistribute
35    the parser skeleton itself, you may (at your option) remove this
36    special exception, which will cause the skeleton and the resulting
37    Bison output files to be licensed under the GNU General Public
38    License without this special exception.
39
40    This special exception was added by the Free Software Foundation in
41    version 2.2 of Bison.  */
42
43 /* Tokens.  */
44 #ifndef YYTOKENTYPE
45 # define YYTOKENTYPE
46    /* Put the tokens into the symbol table, so that GDB and other debuggers
47       know about them.  */
48    enum yytokentype {
49      GRAMPROG = 258,
50      GRAMEXPR = 259,
51      GRAMBLOCK = 260,
52      GRAMBARESTMT = 261,
53      GRAMFULLSTMT = 262,
54      GRAMSTMTSEQ = 263,
55      WORD = 264,
56      METHOD = 265,
57      FUNCMETH = 266,
58      THING = 267,
59      PMFUNC = 268,
60      PRIVATEREF = 269,
61      QWLIST = 270,
62      FUNC0OP = 271,
63      FUNC0SUB = 272,
64      UNIOPSUB = 273,
65      LSTOPSUB = 274,
66      PLUGEXPR = 275,
67      PLUGSTMT = 276,
68      LABEL = 277,
69      FORMAT = 278,
70      SUB = 279,
71      ANONSUB = 280,
72      PACKAGE = 281,
73      USE = 282,
74      WHILE = 283,
75      UNTIL = 284,
76      IF = 285,
77      UNLESS = 286,
78      ELSE = 287,
79      ELSIF = 288,
80      CONTINUE = 289,
81      FOR = 290,
82      GIVEN = 291,
83      WHEN = 292,
84      DEFAULT = 293,
85      LOOPEX = 294,
86      DOTDOT = 295,
87      YADAYADA = 296,
88      FUNC0 = 297,
89      FUNC1 = 298,
90      FUNC = 299,
91      UNIOP = 300,
92      LSTOP = 301,
93      RELOP = 302,
94      EQOP = 303,
95      MULOP = 304,
96      ADDOP = 305,
97      DOLSHARP = 306,
98      DO = 307,
99      HASHBRACK = 308,
100      NOAMP = 309,
101      LOCAL = 310,
102      MY = 311,
103      REQUIRE = 312,
104      COLONATTR = 313,
105      FORMLBRACK = 314,
106      FORMRBRACK = 315,
107      PREC_LOW = 316,
108      DOROP = 317,
109      OROP = 318,
110      ANDOP = 319,
111      NOTOP = 320,
112      ASSIGNOP = 321,
113      DORDOR = 322,
114      OROR = 323,
115      ANDAND = 324,
116      BITOROP = 325,
117      BITANDOP = 326,
118      SHIFTOP = 327,
119      MATCHOP = 328,
120      REFGEN = 329,
121      UMINUS = 330,
122      POWOP = 331,
123      POSTDEC = 332,
124      POSTINC = 333,
125      PREDEC = 334,
126      PREINC = 335,
127      ARROW = 336,
128      PEG = 337
129    };
130 #endif
131 /* Tokens.  */
132 #define GRAMPROG 258
133 #define GRAMEXPR 259
134 #define GRAMBLOCK 260
135 #define GRAMBARESTMT 261
136 #define GRAMFULLSTMT 262
137 #define GRAMSTMTSEQ 263
138 #define WORD 264
139 #define METHOD 265
140 #define FUNCMETH 266
141 #define THING 267
142 #define PMFUNC 268
143 #define PRIVATEREF 269
144 #define QWLIST 270
145 #define FUNC0OP 271
146 #define FUNC0SUB 272
147 #define UNIOPSUB 273
148 #define LSTOPSUB 274
149 #define PLUGEXPR 275
150 #define PLUGSTMT 276
151 #define LABEL 277
152 #define FORMAT 278
153 #define SUB 279
154 #define ANONSUB 280
155 #define PACKAGE 281
156 #define USE 282
157 #define WHILE 283
158 #define UNTIL 284
159 #define IF 285
160 #define UNLESS 286
161 #define ELSE 287
162 #define ELSIF 288
163 #define CONTINUE 289
164 #define FOR 290
165 #define GIVEN 291
166 #define WHEN 292
167 #define DEFAULT 293
168 #define LOOPEX 294
169 #define DOTDOT 295
170 #define YADAYADA 296
171 #define FUNC0 297
172 #define FUNC1 298
173 #define FUNC 299
174 #define UNIOP 300
175 #define LSTOP 301
176 #define RELOP 302
177 #define EQOP 303
178 #define MULOP 304
179 #define ADDOP 305
180 #define DOLSHARP 306
181 #define DO 307
182 #define HASHBRACK 308
183 #define NOAMP 309
184 #define LOCAL 310
185 #define MY 311
186 #define REQUIRE 312
187 #define COLONATTR 313
188 #define FORMLBRACK 314
189 #define FORMRBRACK 315
190 #define PREC_LOW 316
191 #define DOROP 317
192 #define OROP 318
193 #define ANDOP 319
194 #define NOTOP 320
195 #define ASSIGNOP 321
196 #define DORDOR 322
197 #define OROR 323
198 #define ANDAND 324
199 #define BITOROP 325
200 #define BITANDOP 326
201 #define SHIFTOP 327
202 #define MATCHOP 328
203 #define REFGEN 329
204 #define UMINUS 330
205 #define POWOP 331
206 #define POSTDEC 332
207 #define POSTINC 333
208 #define PREDEC 334
209 #define PREINC 335
210 #define ARROW 336
211 #define PEG 337
212
213
214
215
216 #ifdef PERL_IN_TOKE_C
217 static bool
218 S_is_opval_token(int type) {
219     switch (type) {
220     case FUNC0OP:
221     case FUNC0SUB:
222     case FUNCMETH:
223     case LSTOPSUB:
224     case METHOD:
225     case PLUGEXPR:
226     case PLUGSTMT:
227     case PMFUNC:
228     case PRIVATEREF:
229     case QWLIST:
230     case THING:
231     case UNIOPSUB:
232     case WORD:
233         return 1;
234     }
235     return 0;
236 }
237 #endif /* PERL_IN_TOKE_C */
238 #endif /* PERL_CORE */
239 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
240 typedef union YYSTYPE
241 {
242     I32 ival; /* __DEFAULT__ (marker for regen_perly.pl;
243                                 must always be 1st union member) */
244     char *pval;
245     OP *opval;
246     GV *gvval;
247 #ifdef PERL_IN_MADLY_C
248     TOKEN* p_tkval;
249     TOKEN* i_tkval;
250 #else
251     char *p_tkval;
252     I32 i_tkval;
253 #endif
254 #ifdef PERL_MAD
255     TOKEN* tkval;
256 #endif
257 }
258 /* Line 1529 of yacc.c.  */
259         YYSTYPE;
260 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
261 # define YYSTYPE_IS_DECLARED 1
262 # define YYSTYPE_IS_TRIVIAL 1
263 #endif
264
265
266
267
268 /* Generated from:
269  * 8f20aa8c321935dad8457c5b097cd153aacc2f87cd51dc911d1d791d045b642f perly.y
270  * 4a3ced51fe6585f6ec59e65e1ffd74bc976c498b0e6992eaab337219fee72e51 regen_perly.pl
271  * ex: set ro: */