This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update Module-Load-Conditional to CPAN version 0.54
[perl5.git] / perly.h
CommitLineData
e8fb9efb
NC
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
d8118cad 7#ifdef PERL_CORE
4a273b91 8/* A Bison parser, made by GNU Bison 2.3. */
4e4da3ac 9
417a992d 10/* Skeleton interface for Bison's Yacc-like parsers in C
4a273b91
FC
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
0de566d7 16 it under the terms of the GNU General Public License as published by
4a273b91
FC
17 the Free Software Foundation; either version 2, or (at your option)
18 any later version.
19
0de566d7
DM
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.
4a273b91 24
0de566d7 25 You should have received a copy of the GNU General Public License
4a273b91
FC
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. */
0de566d7 29
f05e27e5
DM
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.
4a273b91 39
f05e27e5
DM
40 This special exception was added by the Free Software Foundation in
41 version 2.2 of Bison. */
0de566d7
DM
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 {
636def1f 49 GRAMPROG = 258,
78cdf107
Z
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,
7eb971ee
FC
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 MYSUB = 312,
104 REQUIRE = 313,
105 COLONATTR = 314,
705fe0e5
FC
106 FORMLBRACK = 315,
107 FORMRBRACK = 316,
108 PREC_LOW = 317,
109 DOROP = 318,
110 OROP = 319,
111 ANDOP = 320,
112 NOTOP = 321,
113 ASSIGNOP = 322,
114 DORDOR = 323,
115 OROR = 324,
116 ANDAND = 325,
117 BITOROP = 326,
118 BITANDOP = 327,
119 SHIFTOP = 328,
120 MATCHOP = 329,
121 REFGEN = 330,
122 UMINUS = 331,
123 POWOP = 332,
124 POSTDEC = 333,
125 POSTINC = 334,
126 PREDEC = 335,
127 PREINC = 336,
128 ARROW = 337,
129 PEG = 338
0de566d7
DM
130 };
131#endif
20515881 132/* Tokens. */
636def1f 133#define GRAMPROG 258
78cdf107
Z
134#define GRAMEXPR 259
135#define GRAMBLOCK 260
136#define GRAMBARESTMT 261
137#define GRAMFULLSTMT 262
138#define GRAMSTMTSEQ 263
139#define WORD 264
140#define METHOD 265
141#define FUNCMETH 266
142#define THING 267
143#define PMFUNC 268
144#define PRIVATEREF 269
145#define QWLIST 270
7eb971ee
FC
146#define FUNC0OP 271
147#define FUNC0SUB 272
148#define UNIOPSUB 273
149#define LSTOPSUB 274
150#define PLUGEXPR 275
151#define PLUGSTMT 276
152#define LABEL 277
153#define FORMAT 278
154#define SUB 279
155#define ANONSUB 280
156#define PACKAGE 281
157#define USE 282
158#define WHILE 283
159#define UNTIL 284
160#define IF 285
161#define UNLESS 286
162#define ELSE 287
163#define ELSIF 288
164#define CONTINUE 289
165#define FOR 290
166#define GIVEN 291
167#define WHEN 292
168#define DEFAULT 293
169#define LOOPEX 294
170#define DOTDOT 295
171#define YADAYADA 296
172#define FUNC0 297
173#define FUNC1 298
174#define FUNC 299
175#define UNIOP 300
176#define LSTOP 301
177#define RELOP 302
178#define EQOP 303
179#define MULOP 304
180#define ADDOP 305
181#define DOLSHARP 306
182#define DO 307
183#define HASHBRACK 308
184#define NOAMP 309
185#define LOCAL 310
186#define MY 311
187#define MYSUB 312
188#define REQUIRE 313
189#define COLONATTR 314
705fe0e5
FC
190#define FORMLBRACK 315
191#define FORMRBRACK 316
192#define PREC_LOW 317
193#define DOROP 318
194#define OROP 319
195#define ANDOP 320
196#define NOTOP 321
197#define ASSIGNOP 322
198#define DORDOR 323
199#define OROR 324
200#define ANDAND 325
201#define BITOROP 326
202#define BITANDOP 327
203#define SHIFTOP 328
204#define MATCHOP 329
205#define REFGEN 330
206#define UMINUS 331
207#define POWOP 332
208#define POSTDEC 333
209#define POSTINC 334
210#define PREDEC 335
211#define PREINC 336
212#define ARROW 337
213#define PEG 338
0de566d7 214
d8118cad 215
0de566d7 216
4a273b91 217
6c7ae946
FC
218#ifdef PERL_IN_TOKE_C
219static bool
220S_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 */
0de566d7 240#endif /* PERL_CORE */
f05e27e5
DM
241#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
242typedef union YYSTYPE
243{
d5c6462e
DM
244 I32 ival; /* __DEFAULT__ (marker for regen_perly.pl;
245 must always be 1st union member) */
79072805
LW
246 char *pval;
247 OP *opval;
248 GV *gvval;
f05e27e5
DM
249#ifdef PERL_IN_MADLY_C
250 TOKEN* p_tkval;
123d08c9 251 TOKEN* i_tkval;
f05e27e5
DM
252#else
253 char *p_tkval;
123d08c9
DM
254 I32 i_tkval;
255#endif
256#ifdef PERL_MAD
257 TOKEN* tkval;
f05e27e5 258#endif
4a273b91
FC
259}
260/* Line 1529 of yacc.c. */
261 YYSTYPE;
0de566d7
DM
262# define yystype YYSTYPE /* obsolescent; will be withdrawn */
263# define YYSTYPE_IS_DECLARED 1
4a273b91 264# define YYSTYPE_IS_TRIVIAL 1
0de566d7
DM
265#endif
266
267
268
e8fb9efb 269
c24c946d 270/* Generated from:
705fe0e5 271 * 580d1bac82838fb0ae1e092010e776fb247f0d4cb68834a166507fae86707700 perly.y
6c7ae946 272 * 4a3ced51fe6585f6ec59e65e1ffd74bc976c498b0e6992eaab337219fee72e51 regen_perly.pl
c24c946d 273 * ex: set ro: */