Ruby  2.4.2p198(2017-09-14revision59899)
parse.h
Go to the documentation of this file.
1 /* A Bison parser, made by GNU Bison 2.5. */
2 
3 /* Bison interface for Yacc-like parsers in C
4 
5  Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
6 
7  This program is free software: you can redistribute it and/or modify
8  it under the terms of the GNU General Public License as published by
9  the Free Software Foundation, either version 3 of the License, or
10  (at your option) any later version.
11 
12  This program is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with this program. If not, see <http://www.gnu.org/licenses/>. */
19 
20 /* As a special exception, you may create a larger work that contains
21  part or all of the Bison parser skeleton and distribute that work
22  under terms of your choice, so long as that work isn't itself a
23  parser generator using the skeleton or a modified version thereof
24  as a parser skeleton. Alternatively, if you modify or redistribute
25  the parser skeleton itself, you may (at your option) remove this
26  special exception, which will cause the skeleton and the resulting
27  Bison output files to be licensed under the GNU General Public
28  License without this special exception.
29 
30  This special exception was added by the Free Software Foundation in
31  version 2.2 of Bison. */
32 
33 
34 /* Tokens. */
35 #ifndef YYTOKENTYPE
36 # define YYTOKENTYPE
37  /* Put the tokens into the symbol table, so that GDB and other debuggers
38  know about them. */
39  enum yytokentype {
43  keyword_def = 260,
48  keyword_end = 265,
49  keyword_if = 266,
51  keyword_then = 268,
53  keyword_else = 270,
54  keyword_case = 271,
55  keyword_when = 272,
58  keyword_for = 275,
60  keyword_next = 277,
61  keyword_redo = 278,
63  keyword_in = 280,
64  keyword_do = 281,
71  keyword_self = 288,
72  keyword_nil = 289,
73  keyword_true = 290,
75  keyword_and = 292,
76  keyword_or = 293,
77  keyword_not = 294,
78  modifier_if = 295,
86  keyword_END = 303,
90  tIDENTIFIER = 307,
91  tFID = 308,
92  tGVAR = 309,
93  tIVAR = 310,
94  tCONSTANT = 311,
95  tCVAR = 312,
96  tLABEL = 313,
97  tINTEGER = 314,
98  tFLOAT = 315,
99  tRATIONAL = 316,
100  tIMAGINARY = 317,
102  tCHAR = 319,
103  tNTH_REF = 320,
104  tBACK_REF = 321,
105  tREGEXP_END = 322,
106  tUPLUS = 130,
107  tUMINUS = 131,
108  tPOW = 132,
109  tCMP = 134,
110  tEQ = 139,
111  tEQQ = 140,
112  tNEQ = 141,
113  tGEQ = 138,
114  tLEQ = 137,
115  tANDOP = 148,
116  tOROP = 149,
117  tMATCH = 142,
118  tNMATCH = 143,
119  tDOT2 = 128,
120  tDOT3 = 129,
121  tAREF = 144,
122  tASET = 145,
123  tLSHFT = 135,
124  tRSHFT = 136,
125  tANDDOT = 150,
126  tCOLON2 = 323,
127  tCOLON3 = 324,
128  tOP_ASGN = 325,
129  tASSOC = 326,
130  tLPAREN = 327,
131  tLPAREN_ARG = 328,
132  tRPAREN = 329,
133  tLBRACK = 330,
134  tLBRACE = 331,
135  tLBRACE_ARG = 332,
136  tSTAR = 333,
137  tDSTAR = 334,
138  tAMPER = 335,
139  tLAMBDA = 336,
140  tSYMBEG = 337,
141  tSTRING_BEG = 338,
143  tREGEXP_BEG = 340,
144  tWORDS_BEG = 341,
145  tQWORDS_BEG = 342,
151  tSTRING_END = 348,
152  tLAMBEG = 349,
153  tLABEL_END = 350,
154  tLOWEST = 351,
155  tUMINUS_NUM = 352,
157  };
158 #endif
159 
160 
161 
162 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
163 typedef union YYSTYPE
164 {
165 
166 /* Line 2068 of yacc.c */
167 
171  int num;
172  const struct vtable *vars;
173 
174 
175 
176 /* Line 2068 of yacc.c */
177 } YYSTYPE;
178 # define YYSTYPE_IS_TRIVIAL 1
179 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
180 # define YYSTYPE_IS_DECLARED 1
181 #endif
182 
183 
184 
185 
VALUE val
Definition: parse.h:168
union YYSTYPE YYSTYPE
int num
Definition: parse.h:171
Definition: parse.h:93
Definition: parse.h:138
Definition: parse.h:133
Definition: parse.h:111
Definition: parse.h:121
Definition: parse.h:92
Definition: parse.h:127
NODE * node
Definition: parse.h:169
ID id
Definition: parse.h:170
Definition: parse.h:91
Definition: parse.h:113
Definition: parse.h:110
Definition: parse.h:116
Definition: node.h:235
Definition: parse.h:163
Definition: parse.h:139
Definition: parse.h:114
Definition: parse.h:106
Definition: parse.h:125
Definition: parse.h:119
Definition: parse.h:117
Definition: parse.h:123
Definition: parse.h:140
Definition: parse.h:152
Definition: parse.h:130
unsigned long ID
Definition: ruby.h:86
Definition: parse.h:122
unsigned long VALUE
Definition: ruby.h:85
Definition: parse.h:118
Definition: parse.h:126
yytokentype
Definition: parse.c:909
Definition: parse.h:124
Definition: parse.h:120
Definition: parse.h:108
Definition: parse.h:115
const struct vtable * vars
Definition: parse.h:172
Definition: parse.h:96
Definition: parse.h:95
Definition: parse.h:129
Definition: parse.h:154
Definition: parse.h:107
Definition: parse.h:109
Definition: parse.h:102
Definition: parse.h:132
Definition: parse.h:98
Definition: parse.h:134
Definition: parse.h:112
Definition: ripper.c:190
Definition: parse.h:136
Definition: parse.h:137
Definition: parse.h:97