1*c87b03e5Sespie%{ 2*c87b03e5Sespie/* Keyword definition for the GNU compiler for the Java(TM) language. 3*c87b03e5Sespie Copyright (C) 1997, 1998 Free Software Foundation, Inc. 4*c87b03e5Sespie Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com) 5*c87b03e5Sespie 6*c87b03e5SespieThis file is part of GNU CC. 7*c87b03e5Sespie 8*c87b03e5SespieGNU CC is free software; you can redistribute it and/or modify 9*c87b03e5Sespieit under the terms of the GNU General Public License as published by 10*c87b03e5Sespiethe Free Software Foundation; either version 2, or (at your option) 11*c87b03e5Sespieany later version. 12*c87b03e5Sespie 13*c87b03e5SespieGNU CC is distributed in the hope that it will be useful, 14*c87b03e5Sespiebut WITHOUT ANY WARRANTY; without even the implied warranty of 15*c87b03e5SespieMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16*c87b03e5SespieGNU General Public License for more details. 17*c87b03e5Sespie 18*c87b03e5SespieYou should have received a copy of the GNU General Public License 19*c87b03e5Sespiealong with GNU CC; see the file COPYING. If not, write to 20*c87b03e5Sespiethe Free Software Foundation, 59 Temple Place - Suite 330, 21*c87b03e5SespieBoston, MA 02111-1307, USA. 22*c87b03e5Sespie 23*c87b03e5SespieJava and all Java-based marks are trademarks or registered trademarks 24*c87b03e5Sespieof Sun Microsystems, Inc. in the United States and other countries. 25*c87b03e5SespieThe Free Software Foundation is independent of Sun Microsystems, Inc. */ 26*c87b03e5Sespie 27*c87b03e5Sespie%} 28*c87b03e5Sespiestruct java_keyword { const char *const name; const int token; }; 29*c87b03e5Sespie#ifdef __GNUC__ 30*c87b03e5Sespie__inline 31*c87b03e5Sespie#endif 32*c87b03e5Sespiestatic unsigned int hash PARAMS ((const char *, unsigned int)); 33*c87b03e5Sespie#ifdef __GNUC__ 34*c87b03e5Sespie__inline 35*c87b03e5Sespie#endif 36*c87b03e5Sespieconst struct java_keyword *java_keyword PARAMS ((const char *, unsigned int)); 37*c87b03e5Sespie%% 38*c87b03e5Sespieabstract, ABSTRACT_TK 39*c87b03e5Sespiedefault, DEFAULT_TK 40*c87b03e5Sespieif, IF_TK 41*c87b03e5Sespieprivate, PRIVATE_TK 42*c87b03e5Sespiethrow, THROW_TK 43*c87b03e5Sespieboolean, BOOLEAN_TK 44*c87b03e5Sespiedo, DO_TK 45*c87b03e5Sespieimplements, IMPLEMENTS_TK 46*c87b03e5Sespieprotected, PROTECTED_TK 47*c87b03e5Sespiethrows, THROWS_TK 48*c87b03e5Sespiebreak, BREAK_TK 49*c87b03e5Sespiedouble, DOUBLE_TK 50*c87b03e5Sespieimport, IMPORT_TK 51*c87b03e5Sespiepublic, PUBLIC_TK 52*c87b03e5Sespietransient, TRANSIENT_TK 53*c87b03e5Sespiebyte, BYTE_TK 54*c87b03e5Sespieelse, ELSE_TK 55*c87b03e5Sespieinstanceof, INSTANCEOF_TK 56*c87b03e5Sespiereturn, RETURN_TK 57*c87b03e5Sespietry, TRY_TK 58*c87b03e5Sespiecase, CASE_TK 59*c87b03e5Sespieextends, EXTENDS_TK 60*c87b03e5Sespieint, INT_TK 61*c87b03e5Sespieshort, SHORT_TK 62*c87b03e5Sespievoid, VOID_TK 63*c87b03e5Sespiecatch, CATCH_TK 64*c87b03e5Sespiefinal, FINAL_TK 65*c87b03e5Sespieinterface, INTERFACE_TK 66*c87b03e5Sespiestatic, STATIC_TK 67*c87b03e5Sespievolatile, VOLATILE_TK 68*c87b03e5Sespiechar, CHAR_TK 69*c87b03e5Sespiefinally, FINALLY_TK 70*c87b03e5Sespielong, LONG_TK 71*c87b03e5Sespiesuper, SUPER_TK 72*c87b03e5Sespiewhile, WHILE_TK 73*c87b03e5Sespieclass, CLASS_TK 74*c87b03e5Sespiefloat, FLOAT_TK 75*c87b03e5Sespienative, NATIVE_TK 76*c87b03e5Sespieswitch, SWITCH_TK 77*c87b03e5Sespieconst, CONST_TK 78*c87b03e5Sespiefor, FOR_TK 79*c87b03e5Sespienew, NEW_TK 80*c87b03e5Sespiesynchronized, SYNCHRONIZED_TK 81*c87b03e5Sespiecontinue, CONTINUE_TK 82*c87b03e5Sespiegoto, GOTO_TK 83*c87b03e5Sespiepackage, PACKAGE_TK 84*c87b03e5Sespiethis, THIS_TK 85*c87b03e5Sespiestrictfp, STRICT_TK 86*c87b03e5Sespie# true, false and null aren't keyword. But we match them easily this way 87*c87b03e5Sespietrue, TRUE_TK 88*c87b03e5Sespiefalse, FALSE_TK 89*c87b03e5Sespienull, NULL_TK 90*c87b03e5Sespieassert, ASSERT_TK 91