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