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