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