Ruby 1.9.3p327(2012-11-10revision37606)
parse.h
Go to the documentation of this file.
00001 /* A Bison parser, made by GNU Bison 2.3.  */
00002 
00003 /* Skeleton interface for Bison's Yacc-like parsers in C
00004 
00005    Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
00006    Free Software Foundation, Inc.
00007 
00008    This program is free software; you can redistribute it and/or modify
00009    it under the terms of the GNU General Public License as published by
00010    the Free Software Foundation; either version 2, or (at your option)
00011    any later version.
00012 
00013    This program is distributed in the hope that it will be useful,
00014    but WITHOUT ANY WARRANTY; without even the implied warranty of
00015    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016    GNU General Public License for more details.
00017 
00018    You should have received a copy of the GNU General Public License
00019    along with this program; if not, write to the Free Software
00020    Foundation, Inc., 51 Franklin Street, Fifth Floor,
00021    Boston, MA 02110-1301, USA.  */
00022 
00023 /* As a special exception, you may create a larger work that contains
00024    part or all of the Bison parser skeleton and distribute that work
00025    under terms of your choice, so long as that work isn't itself a
00026    parser generator using the skeleton or a modified version thereof
00027    as a parser skeleton.  Alternatively, if you modify or redistribute
00028    the parser skeleton itself, you may (at your option) remove this
00029    special exception, which will cause the skeleton and the resulting
00030    Bison output files to be licensed under the GNU General Public
00031    License without this special exception.
00032 
00033    This special exception was added by the Free Software Foundation in
00034    version 2.2 of Bison.  */
00035 
00036 /* Tokens.  */
00037 #ifndef YYTOKENTYPE
00038 # define YYTOKENTYPE
00039    /* Put the tokens into the symbol table, so that GDB and other debuggers
00040       know about them.  */
00041    enum yytokentype {
00042      keyword_class = 258,
00043      keyword_module = 259,
00044      keyword_def = 260,
00045      keyword_undef = 261,
00046      keyword_begin = 262,
00047      keyword_rescue = 263,
00048      keyword_ensure = 264,
00049      keyword_end = 265,
00050      keyword_if = 266,
00051      keyword_unless = 267,
00052      keyword_then = 268,
00053      keyword_elsif = 269,
00054      keyword_else = 270,
00055      keyword_case = 271,
00056      keyword_when = 272,
00057      keyword_while = 273,
00058      keyword_until = 274,
00059      keyword_for = 275,
00060      keyword_break = 276,
00061      keyword_next = 277,
00062      keyword_redo = 278,
00063      keyword_retry = 279,
00064      keyword_in = 280,
00065      keyword_do = 281,
00066      keyword_do_cond = 282,
00067      keyword_do_block = 283,
00068      keyword_do_LAMBDA = 284,
00069      keyword_return = 285,
00070      keyword_yield = 286,
00071      keyword_super = 287,
00072      keyword_self = 288,
00073      keyword_nil = 289,
00074      keyword_true = 290,
00075      keyword_false = 291,
00076      keyword_and = 292,
00077      keyword_or = 293,
00078      keyword_not = 294,
00079      modifier_if = 295,
00080      modifier_unless = 296,
00081      modifier_while = 297,
00082      modifier_until = 298,
00083      modifier_rescue = 299,
00084      keyword_alias = 300,
00085      keyword_defined = 301,
00086      keyword_BEGIN = 302,
00087      keyword_END = 303,
00088      keyword__LINE__ = 304,
00089      keyword__FILE__ = 305,
00090      keyword__ENCODING__ = 306,
00091      tIDENTIFIER = 307,
00092      tFID = 308,
00093      tGVAR = 309,
00094      tIVAR = 310,
00095      tCONSTANT = 311,
00096      tCVAR = 312,
00097      tLABEL = 313,
00098      tINTEGER = 314,
00099      tFLOAT = 315,
00100      tSTRING_CONTENT = 316,
00101      tCHAR = 317,
00102      tNTH_REF = 318,
00103      tBACK_REF = 319,
00104      tREGEXP_END = 320,
00105      tUPLUS = 321,
00106      tUMINUS = 322,
00107      tPOW = 323,
00108      tCMP = 324,
00109      tEQ = 325,
00110      tEQQ = 326,
00111      tNEQ = 327,
00112      tGEQ = 328,
00113      tLEQ = 329,
00114      tANDOP = 330,
00115      tOROP = 331,
00116      tMATCH = 332,
00117      tNMATCH = 333,
00118      tDOT2 = 334,
00119      tDOT3 = 335,
00120      tAREF = 336,
00121      tASET = 337,
00122      tLSHFT = 338,
00123      tRSHFT = 339,
00124      tCOLON2 = 340,
00125      tCOLON3 = 341,
00126      tOP_ASGN = 342,
00127      tASSOC = 343,
00128      tLPAREN = 344,
00129      tLPAREN_ARG = 345,
00130      tRPAREN = 346,
00131      tLBRACK = 347,
00132      tLBRACE = 348,
00133      tLBRACE_ARG = 349,
00134      tSTAR = 350,
00135      tAMPER = 351,
00136      tLAMBDA = 352,
00137      tSYMBEG = 353,
00138      tSTRING_BEG = 354,
00139      tXSTRING_BEG = 355,
00140      tREGEXP_BEG = 356,
00141      tWORDS_BEG = 357,
00142      tQWORDS_BEG = 358,
00143      tSTRING_DBEG = 359,
00144      tSTRING_DVAR = 360,
00145      tSTRING_END = 361,
00146      tLAMBEG = 362,
00147      tLOWEST = 363,
00148      tUMINUS_NUM = 364,
00149      idNULL = 365,
00150      idRespond_to = 366,
00151      idIFUNC = 367,
00152      idCFUNC = 368,
00153      id_core_set_method_alias = 369,
00154      id_core_set_variable_alias = 370,
00155      id_core_undef_method = 371,
00156      id_core_define_method = 372,
00157      id_core_define_singleton_method = 373,
00158      id_core_set_postexe = 374,
00159      tLAST_TOKEN = 375
00160    };
00161 #endif
00162 /* Tokens.  */
00163 #define keyword_class 258
00164 #define keyword_module 259
00165 #define keyword_def 260
00166 #define keyword_undef 261
00167 #define keyword_begin 262
00168 #define keyword_rescue 263
00169 #define keyword_ensure 264
00170 #define keyword_end 265
00171 #define keyword_if 266
00172 #define keyword_unless 267
00173 #define keyword_then 268
00174 #define keyword_elsif 269
00175 #define keyword_else 270
00176 #define keyword_case 271
00177 #define keyword_when 272
00178 #define keyword_while 273
00179 #define keyword_until 274
00180 #define keyword_for 275
00181 #define keyword_break 276
00182 #define keyword_next 277
00183 #define keyword_redo 278
00184 #define keyword_retry 279
00185 #define keyword_in 280
00186 #define keyword_do 281
00187 #define keyword_do_cond 282
00188 #define keyword_do_block 283
00189 #define keyword_do_LAMBDA 284
00190 #define keyword_return 285
00191 #define keyword_yield 286
00192 #define keyword_super 287
00193 #define keyword_self 288
00194 #define keyword_nil 289
00195 #define keyword_true 290
00196 #define keyword_false 291
00197 #define keyword_and 292
00198 #define keyword_or 293
00199 #define keyword_not 294
00200 #define modifier_if 295
00201 #define modifier_unless 296
00202 #define modifier_while 297
00203 #define modifier_until 298
00204 #define modifier_rescue 299
00205 #define keyword_alias 300
00206 #define keyword_defined 301
00207 #define keyword_BEGIN 302
00208 #define keyword_END 303
00209 #define keyword__LINE__ 304
00210 #define keyword__FILE__ 305
00211 #define keyword__ENCODING__ 306
00212 #define tIDENTIFIER 307
00213 #define tFID 308
00214 #define tGVAR 309
00215 #define tIVAR 310
00216 #define tCONSTANT 311
00217 #define tCVAR 312
00218 #define tLABEL 313
00219 #define tINTEGER 314
00220 #define tFLOAT 315
00221 #define tSTRING_CONTENT 316
00222 #define tCHAR 317
00223 #define tNTH_REF 318
00224 #define tBACK_REF 319
00225 #define tREGEXP_END 320
00226 #define tUPLUS 321
00227 #define tUMINUS 322
00228 #define tPOW 323
00229 #define tCMP 324
00230 #define tEQ 325
00231 #define tEQQ 326
00232 #define tNEQ 327
00233 #define tGEQ 328
00234 #define tLEQ 329
00235 #define tANDOP 330
00236 #define tOROP 331
00237 #define tMATCH 332
00238 #define tNMATCH 333
00239 #define tDOT2 334
00240 #define tDOT3 335
00241 #define tAREF 336
00242 #define tASET 337
00243 #define tLSHFT 338
00244 #define tRSHFT 339
00245 #define tCOLON2 340
00246 #define tCOLON3 341
00247 #define tOP_ASGN 342
00248 #define tASSOC 343
00249 #define tLPAREN 344
00250 #define tLPAREN_ARG 345
00251 #define tRPAREN 346
00252 #define tLBRACK 347
00253 #define tLBRACE 348
00254 #define tLBRACE_ARG 349
00255 #define tSTAR 350
00256 #define tAMPER 351
00257 #define tLAMBDA 352
00258 #define tSYMBEG 353
00259 #define tSTRING_BEG 354
00260 #define tXSTRING_BEG 355
00261 #define tREGEXP_BEG 356
00262 #define tWORDS_BEG 357
00263 #define tQWORDS_BEG 358
00264 #define tSTRING_DBEG 359
00265 #define tSTRING_DVAR 360
00266 #define tSTRING_END 361
00267 #define tLAMBEG 362
00268 #define tLOWEST 363
00269 #define tUMINUS_NUM 364
00270 #define idNULL 365
00271 #define idRespond_to 366
00272 #define idIFUNC 367
00273 #define idCFUNC 368
00274 #define id_core_set_method_alias 369
00275 #define id_core_set_variable_alias 370
00276 #define id_core_undef_method 371
00277 #define id_core_define_method 372
00278 #define id_core_define_singleton_method 373
00279 #define id_core_set_postexe 374
00280 #define tLAST_TOKEN 375
00281 
00282 
00283 
00284 
00285 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
00286 typedef union YYSTYPE
00287 {
00288     VALUE val;
00289     NODE *node;
00290     ID id;
00291     int num;
00292     const struct vtable *vars;
00293 }
00294 /* Line 1489 of yacc.c.  */
00295         YYSTYPE;
00296 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
00297 # define YYSTYPE_IS_DECLARED 1
00298 # define YYSTYPE_IS_TRIVIAL 1
00299 #endif
00300 
00301 
00302 
00303