1 /* A Bison parser, made by GNU Bison 3.0.4. */ 2 3 /* Bison interface for Yacc-like parsers in C 4 5 Copyright (C) 1984, 1989-1990, 2000-2015 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 #ifndef YY_YY_Y_TAB_H_INCLUDED 34 # define YY_YY_Y_TAB_H_INCLUDED 35 /* Debug traces. */ 36 #ifndef YYDEBUG 37 # define YYDEBUG 0 38 #endif 39 #if YYDEBUG 40 extern int yydebug; 41 #endif 42 43 /* Token type. */ 44 #ifndef YYTOKENTYPE 45 # define YYTOKENTYPE 46 enum yytokentype 47 { 48 ID = 258, 49 HBLOCK = 259, 50 POUND = 260, 51 STRING = 261, 52 WSTRING = 262, 53 INCLUDE = 263, 54 IMPORT = 264, 55 INSERT = 265, 56 CHARCONST = 266, 57 WCHARCONST = 267, 58 NUM_INT = 268, 59 NUM_FLOAT = 269, 60 NUM_UNSIGNED = 270, 61 NUM_LONG = 271, 62 NUM_ULONG = 272, 63 NUM_LONGLONG = 273, 64 NUM_ULONGLONG = 274, 65 NUM_BOOL = 275, 66 TYPEDEF = 276, 67 TYPE_INT = 277, 68 TYPE_UNSIGNED = 278, 69 TYPE_SHORT = 279, 70 TYPE_LONG = 280, 71 TYPE_FLOAT = 281, 72 TYPE_DOUBLE = 282, 73 TYPE_CHAR = 283, 74 TYPE_WCHAR = 284, 75 TYPE_VOID = 285, 76 TYPE_SIGNED = 286, 77 TYPE_BOOL = 287, 78 TYPE_COMPLEX = 288, 79 TYPE_TYPEDEF = 289, 80 TYPE_RAW = 290, 81 TYPE_NON_ISO_INT8 = 291, 82 TYPE_NON_ISO_INT16 = 292, 83 TYPE_NON_ISO_INT32 = 293, 84 TYPE_NON_ISO_INT64 = 294, 85 LPAREN = 295, 86 RPAREN = 296, 87 COMMA = 297, 88 SEMI = 298, 89 EXTERN = 299, 90 INIT = 300, 91 LBRACE = 301, 92 RBRACE = 302, 93 PERIOD = 303, 94 CONST_QUAL = 304, 95 VOLATILE = 305, 96 REGISTER = 306, 97 STRUCT = 307, 98 UNION = 308, 99 EQUAL = 309, 100 SIZEOF = 310, 101 MODULE = 311, 102 LBRACKET = 312, 103 RBRACKET = 313, 104 BEGINFILE = 314, 105 ENDOFFILE = 315, 106 ILLEGAL = 316, 107 CONSTANT = 317, 108 NAME = 318, 109 RENAME = 319, 110 NAMEWARN = 320, 111 EXTEND = 321, 112 PRAGMA = 322, 113 FEATURE = 323, 114 VARARGS = 324, 115 ENUM = 325, 116 CLASS = 326, 117 TYPENAME = 327, 118 PRIVATE = 328, 119 PUBLIC = 329, 120 PROTECTED = 330, 121 COLON = 331, 122 STATIC = 332, 123 VIRTUAL = 333, 124 FRIEND = 334, 125 THROW = 335, 126 CATCH = 336, 127 EXPLICIT = 337, 128 STATIC_ASSERT = 338, 129 CONSTEXPR = 339, 130 THREAD_LOCAL = 340, 131 DECLTYPE = 341, 132 AUTO = 342, 133 NOEXCEPT = 343, 134 OVERRIDE = 344, 135 FINAL = 345, 136 USING = 346, 137 NAMESPACE = 347, 138 NATIVE = 348, 139 INLINE = 349, 140 TYPEMAP = 350, 141 EXCEPT = 351, 142 ECHO = 352, 143 APPLY = 353, 144 CLEAR = 354, 145 SWIGTEMPLATE = 355, 146 FRAGMENT = 356, 147 WARN = 357, 148 LESSTHAN = 358, 149 GREATERTHAN = 359, 150 DELETE_KW = 360, 151 DEFAULT = 361, 152 LESSTHANOREQUALTO = 362, 153 GREATERTHANOREQUALTO = 363, 154 EQUALTO = 364, 155 NOTEQUALTO = 365, 156 ARROW = 366, 157 QUESTIONMARK = 367, 158 TYPES = 368, 159 PARMS = 369, 160 NONID = 370, 161 DSTAR = 371, 162 DCNOT = 372, 163 TEMPLATE = 373, 164 OPERATOR = 374, 165 CONVERSIONOPERATOR = 375, 166 PARSETYPE = 376, 167 PARSEPARM = 377, 168 PARSEPARMS = 378, 169 DOXYGENSTRING = 379, 170 DOXYGENPOSTSTRING = 380, 171 CAST = 381, 172 LOR = 382, 173 LAND = 383, 174 OR = 384, 175 XOR = 385, 176 AND = 386, 177 LSHIFT = 387, 178 RSHIFT = 388, 179 PLUS = 389, 180 MINUS = 390, 181 STAR = 391, 182 SLASH = 392, 183 MODULO = 393, 184 UMINUS = 394, 185 NOT = 395, 186 LNOT = 396, 187 DCOLON = 397 188 }; 189 #endif 190 /* Tokens. */ 191 #define ID 258 192 #define HBLOCK 259 193 #define POUND 260 194 #define STRING 261 195 #define WSTRING 262 196 #define INCLUDE 263 197 #define IMPORT 264 198 #define INSERT 265 199 #define CHARCONST 266 200 #define WCHARCONST 267 201 #define NUM_INT 268 202 #define NUM_FLOAT 269 203 #define NUM_UNSIGNED 270 204 #define NUM_LONG 271 205 #define NUM_ULONG 272 206 #define NUM_LONGLONG 273 207 #define NUM_ULONGLONG 274 208 #define NUM_BOOL 275 209 #define TYPEDEF 276 210 #define TYPE_INT 277 211 #define TYPE_UNSIGNED 278 212 #define TYPE_SHORT 279 213 #define TYPE_LONG 280 214 #define TYPE_FLOAT 281 215 #define TYPE_DOUBLE 282 216 #define TYPE_CHAR 283 217 #define TYPE_WCHAR 284 218 #define TYPE_VOID 285 219 #define TYPE_SIGNED 286 220 #define TYPE_BOOL 287 221 #define TYPE_COMPLEX 288 222 #define TYPE_TYPEDEF 289 223 #define TYPE_RAW 290 224 #define TYPE_NON_ISO_INT8 291 225 #define TYPE_NON_ISO_INT16 292 226 #define TYPE_NON_ISO_INT32 293 227 #define TYPE_NON_ISO_INT64 294 228 #define LPAREN 295 229 #define RPAREN 296 230 #define COMMA 297 231 #define SEMI 298 232 #define EXTERN 299 233 #define INIT 300 234 #define LBRACE 301 235 #define RBRACE 302 236 #define PERIOD 303 237 #define CONST_QUAL 304 238 #define VOLATILE 305 239 #define REGISTER 306 240 #define STRUCT 307 241 #define UNION 308 242 #define EQUAL 309 243 #define SIZEOF 310 244 #define MODULE 311 245 #define LBRACKET 312 246 #define RBRACKET 313 247 #define BEGINFILE 314 248 #define ENDOFFILE 315 249 #define ILLEGAL 316 250 #define CONSTANT 317 251 #define NAME 318 252 #define RENAME 319 253 #define NAMEWARN 320 254 #define EXTEND 321 255 #define PRAGMA 322 256 #define FEATURE 323 257 #define VARARGS 324 258 #define ENUM 325 259 #define CLASS 326 260 #define TYPENAME 327 261 #define PRIVATE 328 262 #define PUBLIC 329 263 #define PROTECTED 330 264 #define COLON 331 265 #define STATIC 332 266 #define VIRTUAL 333 267 #define FRIEND 334 268 #define THROW 335 269 #define CATCH 336 270 #define EXPLICIT 337 271 #define STATIC_ASSERT 338 272 #define CONSTEXPR 339 273 #define THREAD_LOCAL 340 274 #define DECLTYPE 341 275 #define AUTO 342 276 #define NOEXCEPT 343 277 #define OVERRIDE 344 278 #define FINAL 345 279 #define USING 346 280 #define NAMESPACE 347 281 #define NATIVE 348 282 #define INLINE 349 283 #define TYPEMAP 350 284 #define EXCEPT 351 285 #define ECHO 352 286 #define APPLY 353 287 #define CLEAR 354 288 #define SWIGTEMPLATE 355 289 #define FRAGMENT 356 290 #define WARN 357 291 #define LESSTHAN 358 292 #define GREATERTHAN 359 293 #define DELETE_KW 360 294 #define DEFAULT 361 295 #define LESSTHANOREQUALTO 362 296 #define GREATERTHANOREQUALTO 363 297 #define EQUALTO 364 298 #define NOTEQUALTO 365 299 #define ARROW 366 300 #define QUESTIONMARK 367 301 #define TYPES 368 302 #define PARMS 369 303 #define NONID 370 304 #define DSTAR 371 305 #define DCNOT 372 306 #define TEMPLATE 373 307 #define OPERATOR 374 308 #define CONVERSIONOPERATOR 375 309 #define PARSETYPE 376 310 #define PARSEPARM 377 311 #define PARSEPARMS 378 312 #define DOXYGENSTRING 379 313 #define DOXYGENPOSTSTRING 380 314 #define CAST 381 315 #define LOR 382 316 #define LAND 383 317 #define OR 384 318 #define XOR 385 319 #define AND 386 320 #define LSHIFT 387 321 #define RSHIFT 388 322 #define PLUS 389 323 #define MINUS 390 324 #define STAR 391 325 #define SLASH 392 326 #define MODULO 393 327 #define UMINUS 394 328 #define NOT 395 329 #define LNOT 396 330 #define DCOLON 397 331 332 /* Value type. */ 333 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 334 335 union YYSTYPE 336 { 337 #line 1542 "parser.y" /* yacc.c:1909 */ 338 339 const char *id; 340 List *bases; 341 struct Define { 342 String *val; 343 String *rawval; 344 int type; 345 String *qualifier; 346 String *refqualifier; 347 String *bitfield; 348 Parm *throws; 349 String *throwf; 350 String *nexcept; 351 String *final; 352 } dtype; 353 struct { 354 const char *type; 355 String *filename; 356 int line; 357 } loc; 358 struct { 359 char *id; 360 SwigType *type; 361 String *defarg; 362 ParmList *parms; 363 short have_parms; 364 ParmList *throws; 365 String *throwf; 366 String *nexcept; 367 String *final; 368 } decl; 369 Parm *tparms; 370 struct { 371 String *method; 372 Hash *kwargs; 373 } tmap; 374 struct { 375 String *type; 376 String *us; 377 } ptype; 378 SwigType *type; 379 String *str; 380 Parm *p; 381 ParmList *pl; 382 int intvalue; 383 Node *node; 384 385 #line 386 "y.tab.h" /* yacc.c:1909 */ 386 }; 387 388 typedef union YYSTYPE YYSTYPE; 389 # define YYSTYPE_IS_TRIVIAL 1 390 # define YYSTYPE_IS_DECLARED 1 391 #endif 392 393 394 extern YYSTYPE yylval; 395 396 int yyparse (void); 397 398 #endif /* !YY_YY_Y_TAB_H_INCLUDED */ 399