/* A Bison parser, made by GNU Bison 2.0. */ /* Skeleton parser for Yacc-like parsing with Bison, Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* As a special exception, when this file is copied by Bison into a Bison output file, you may use that output file without restriction. This special exception was added by the Free Software Foundation in version 1.24 of Bison. */ /* Tokens. */ #ifndef YYTOKENTYPE # define YYTOKENTYPE /* Put the tokens into the symbol table, so that GDB and other debuggers know about them. */ enum yytokentype { BOOLEAN = 258, CLASS = 259, ELSE = 260, IF = 261, INT = 262, MAIN = 263, NEW = 264, NULLTOK = 265, OUT = 266, PRINTLN = 267, PUBLIC = 268, RETURN = 269, STATIC = 270, THIS = 271, VOID = 272, WHILE = 273, STRING = 274, SYSTEM = 275, INT_LITERAL = 276, BOOL_LITERAL = 277, ID = 278, EQUALS = 279, NOTEQUALS = 280, AND = 281, ERROR = 282 }; #endif #define BOOLEAN 258 #define CLASS 259 #define ELSE 260 #define IF 261 #define INT 262 #define MAIN 263 #define NEW 264 #define NULLTOK 265 #define OUT 266 #define PRINTLN 267 #define PUBLIC 268 #define RETURN 269 #define STATIC 270 #define THIS 271 #define VOID 272 #define WHILE 273 #define STRING 274 #define SYSTEM 275 #define INT_LITERAL 276 #define BOOL_LITERAL 277 #define ID 278 #define EQUALS 279 #define NOTEQUALS 280 #define AND 281 #define ERROR 282 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) #line 34 "espresso.y" typedef union YYSTYPE { int intLiteral; bool boolLiteral; Symbol * id; char * errorMsg; Program *program; ClassList *classList; Class *class_; MemberList *memberList; Member *member; FormalList *formalList; Formal *formal; LocalList *localList; Local *local; Expr *expr; ExprList *exprList; StmtList *stmtList; Stmt *stmt; } YYSTYPE; /* Line 1318 of yacc.c. */ #line 111 "espresso.tab.h" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 #endif extern YYSTYPE yylval;