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 30003 8 9 #ifdef PERL_CORE 10 /* A Bison parser, made by GNU Bison 3.3.2. */ 11 12 /* Bison interface for Yacc-like parsers in C 13 14 Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation, 15 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 3 of the License, or 20 (at your option) 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, see <http://www.gnu.org/licenses/>. */ 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 /* Undocumented macros, especially those whose name start with YY_, 44 are private implementation details. Do not rely on them. */ 45 46 /* Debug traces. */ 47 #ifndef YYDEBUG 48 # define YYDEBUG 0 49 #endif 50 #if YYDEBUG 51 extern int yydebug; 52 #endif 53 54 /* Token type. */ 55 #ifndef YYTOKENTYPE 56 # define YYTOKENTYPE 57 enum yytokentype 58 { 59 GRAMPROG = 258, 60 GRAMEXPR = 259, 61 GRAMBLOCK = 260, 62 GRAMBARESTMT = 261, 63 GRAMFULLSTMT = 262, 64 GRAMSTMTSEQ = 263, 65 GRAMSUBSIGNATURE = 264, 66 BAREWORD = 265, 67 METHOD = 266, 68 FUNCMETH = 267, 69 THING = 268, 70 PMFUNC = 269, 71 PRIVATEREF = 270, 72 QWLIST = 271, 73 FUNC0OP = 272, 74 FUNC0SUB = 273, 75 UNIOPSUB = 274, 76 LSTOPSUB = 275, 77 PLUGEXPR = 276, 78 PLUGSTMT = 277, 79 LABEL = 278, 80 FORMAT = 279, 81 SUB = 280, 82 SIGSUB = 281, 83 ANONSUB = 282, 84 ANON_SIGSUB = 283, 85 PACKAGE = 284, 86 USE = 285, 87 WHILE = 286, 88 UNTIL = 287, 89 IF = 288, 90 UNLESS = 289, 91 ELSE = 290, 92 ELSIF = 291, 93 CONTINUE = 292, 94 FOR = 293, 95 GIVEN = 294, 96 WHEN = 295, 97 DEFAULT = 296, 98 LOOPEX = 297, 99 DOTDOT = 298, 100 YADAYADA = 299, 101 FUNC0 = 300, 102 FUNC1 = 301, 103 FUNC = 302, 104 UNIOP = 303, 105 LSTOP = 304, 106 MULOP = 305, 107 ADDOP = 306, 108 DOLSHARP = 307, 109 DO = 308, 110 HASHBRACK = 309, 111 NOAMP = 310, 112 LOCAL = 311, 113 MY = 312, 114 REQUIRE = 313, 115 COLONATTR = 314, 116 FORMLBRACK = 315, 117 FORMRBRACK = 316, 118 SUBLEXSTART = 317, 119 SUBLEXEND = 318, 120 PREC_LOW = 319, 121 OROP = 320, 122 DOROP = 321, 123 ANDOP = 322, 124 NOTOP = 323, 125 ASSIGNOP = 324, 126 OROR = 325, 127 DORDOR = 326, 128 ANDAND = 327, 129 BITOROP = 328, 130 BITANDOP = 329, 131 CHEQOP = 330, 132 NCEQOP = 331, 133 CHRELOP = 332, 134 NCRELOP = 333, 135 SHIFTOP = 334, 136 MATCHOP = 335, 137 UMINUS = 336, 138 REFGEN = 337, 139 POWOP = 338, 140 PREINC = 339, 141 PREDEC = 340, 142 POSTINC = 341, 143 POSTDEC = 342, 144 POSTJOIN = 343, 145 ARROW = 344 146 }; 147 #endif 148 149 /* Value type. */ 150 #ifdef PERL_IN_TOKE_C 151 static bool 152 S_is_opval_token(int type) { 153 switch (type) { 154 case BAREWORD: 155 case FUNC0OP: 156 case FUNC0SUB: 157 case FUNCMETH: 158 case LABEL: 159 case LSTOPSUB: 160 case METHOD: 161 case PLUGEXPR: 162 case PLUGSTMT: 163 case PMFUNC: 164 case PRIVATEREF: 165 case QWLIST: 166 case THING: 167 case UNIOPSUB: 168 return 1; 169 } 170 return 0; 171 } 172 #endif /* PERL_IN_TOKE_C */ 173 #endif /* PERL_CORE */ 174 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 175 176 union YYSTYPE 177 { 178 179 I32 ival; /* __DEFAULT__ (marker for regen_perly.pl; 180 must always be 1st union member) */ 181 char *pval; 182 OP *opval; 183 GV *gvval; 184 185 }; 186 187 typedef union YYSTYPE YYSTYPE; 188 # define YYSTYPE_IS_TRIVIAL 1 189 # define YYSTYPE_IS_DECLARED 1 190 #endif 191 192 193 194 int yyparse (void); 195 196 197 /* Generated from: 198 * e5b801fdebce5c77dd8e644fc5a489cbea6af33db180e771dd9d669b12bbe0cf perly.y 199 * 0947213b55d0ed11693554bea04987e886cf285f5c14cf9075fa1e7acc3f4061 regen_perly.pl 200 * ex: set ro: */ 201