/**********************************************************************
-Copyright (c) 2002 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v0.5
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v05.html
-
-Contributors:
- IBM Corporation - initial API and implementation
-**********************************************************************/
-
+ Copyright (c) 2002 IBM Corp. and others.
+ All rights reserved. � This program and the accompanying materials
+ are made available under the terms of the Common Public License v0.5
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/cpl-v05.html
+ �
+ Contributors:
+ IBM Corporation - initial API and implementation
+ **********************************************************************/
package net.sourceforge.phpdt.core.compiler;
/**
- * Maps each terminal symbol in the php-grammar into a unique integer.
- * This integer is used to represent the terminal when computing a parsing
- * action.
- *
+ * Maps each terminal symbol in the php-grammar into a unique integer. This
+ * integer is used to represent the terminal when computing a parsing action.
+ *
* @see IScanner
* @since 2.0
*/
-public interface ITerminalSymbols {
-
- public final static String[] PHP_TYPES =
- {
- "array",
- "string",
- "object",
- "bool",
- "boolean",
- "real",
- "double",
- "float",
- "int",
- "integer",
- };
- //"array",
- public final static int TokenNameWHITESPACE = 900,
- TokenNameCOMMENT_LINE = 901,
- TokenNameCOMMENT_BLOCK = 902,
- TokenNameCOMMENT_PHPDOC = 903,
- TokenNameHTML = 904;
-
- final static int TokenNameEOF = 0;
- final static int TokenNameERROR = 1;
- final static int TokenNameStopPHP = 2;
-
- final static int TokenNameREMAINDER = 30;
- final static int TokenNameNOT = 31;
- final static int TokenNameDOT = 32;
- final static int TokenNameXOR = 33;
- final static int TokenNameDIVIDE = 34;
- final static int TokenNameMULTIPLY = 35;
- final static int TokenNameMINUS = 36;
- final static int TokenNamePLUS = 37;
- final static int TokenNameEQUAL_EQUAL = 38;
- final static int TokenNameNOT_EQUAL = 39;
- final static int TokenNameGREATER = 40;
- final static int TokenNameGREATER_EQUAL = 41;
- final static int TokenNameLESS = 42;
- final static int TokenNameLESS_EQUAL = 43;
- final static int TokenNameAND_AND = 44;
- final static int TokenNameOR_OR = 45;
- final static int TokenNameCOLON = 47;
- final static int TokenNameDOT_EQUAL = 48;
- final static int TokenNameEQUAL = 49;
- final static int TokenNameMINUS_GREATER = 50; // ->
- final static int TokenNameEQUAL_GREATER = 51; // => (for each operator)
- final static int TokenNameAND = 52;
- final static int TokenNameTWIDDLE = 54;
- final static int TokenNameTWIDDLE_EQUAL = 55;
- final static int TokenNameREMAINDER_EQUAL = 56;
- final static int TokenNameXOR_EQUAL = 57;
- final static int TokenNameRIGHT_SHIFT_EQUAL = 58;
- final static int TokenNameLEFT_SHIFT_EQUAL = 59;
- final static int TokenNameAND_EQUAL = 60;
- final static int TokenNameOR_EQUAL = 61;
- final static int TokenNameQUESTION = 62;
- final static int TokenNameCOLON_COLON = 63;
- final static int TokenNameAT = 64;
-
- final static int TokenNameDOLLAR_LBRACE = 127;
- final static int TokenNameLPAREN = 128;
- final static int TokenNameRPAREN = 129;
- final static int TokenNameLBRACE = 130;
- final static int TokenNameRBRACE = 131;
- final static int TokenNameLBRACKET = 132;
- final static int TokenNameRBRACKET = 133;
- final static int TokenNameCOMMA = 134;
-
- final static int TokenNameStringLiteral = 136;
- final static int TokenNameIdentifier = 138;
- final static int TokenNameSEMICOLON = 140;
- final static int TokenNameMINUS_MINUS = 144;
- final static int TokenNamePLUS_PLUS = 145;
- final static int TokenNamePLUS_EQUAL = 146;
- final static int TokenNameDIVIDE_EQUAL = 147;
- final static int TokenNameMINUS_EQUAL = 148;
- final static int TokenNameMULTIPLY_EQUAL = 149;
- final static int TokenNameVariable = 150;
- final static int TokenNameIntegerLiteral = 151;
- final static int TokenNameDoubleLiteral = 152;
- final static int TokenNameStringInterpolated = 153;
- final static int TokenNameStringConstant = 154;
-
- final static int TokenNameLEFT_SHIFT = 155;
- final static int TokenNameRIGHT_SHIFT = 156;
- final static int TokenNameEQUAL_EQUAL_EQUAL = 157;
- final static int TokenNameNOT_EQUAL_EQUAL = 158;
- final static int TokenNameOR = 159;
- final static int TokenNameHEREDOC = 160;
-
- public final static int TokenNameKEYWORD = 1000;
- public final static int TokenNameif = 1001;
- public final static int TokenNameelseif = 1002;
- public final static int TokenNameelse = 1003;
- public final static int TokenNameendif = 1004;
- public final static int TokenNamefor = 1005;
- public final static int TokenNameendfor = 1006;
- public final static int TokenNamewhile = 1007;
- public final static int TokenNameendwhile = 1008;
- public final static int TokenNameswitch = 1009;
- public final static int TokenNamecase = 10010;
- public final static int TokenNameendswitch = 1011;
- public final static int TokenNamebreak = 1012;
- public final static int TokenNamecontinue = 1013;
- public final static int TokenNamereturn = 1014;
- public final static int TokenNamedefine = 1015;
- public final static int TokenNameinclude = 1016;
- public final static int TokenNameinclude_once = 1017;
- public final static int TokenNamerequire = 1018;
- public final static int TokenNamerequire_once = 1019;
- public final static int TokenNamefunction = 1020;
- public final static int TokenNameclass = 1021;
- public final static int TokenNamenew = 1022;
- public final static int TokenNamedo = 1023;
- public final static int TokenNameold_function = 1024;
- public final static int TokenNamedefault = 1025;
- public final static int TokenNameglobal = 1026;
- public final static int TokenNamestatic = 1027;
- public final static int TokenNameforeach = 1028;
- public final static int TokenNameendforeach = 1029;
- public final static int TokenNameextends = 1030;
- public final static int TokenNameempty = 1031;
- public final static int TokenNamearray = 1032;
- public final static int TokenNameecho = 1033;
- public final static int TokenNamevar = 1034;
- public final static int TokenNameas = 1035;
- public final static int TokenNameprint = 1036;
- public final static int TokenNameunset = 1037;
- public final static int TokenNameexit = 1038;
-// public final static int TokenNamedie = 1039;
- // public final static int TokenNameand = 1040;
- // public final static int TokenNameor = 1041;
- // public final static int TokenNamexor = 1042;
- public final static int TokenNamelist = 1043;
- public final static int TokenNamenull = 1044;
- public final static int TokenNamefalse = 1045;
- public final static int TokenNametrue = 1046;
- public final static int TokenNamethis = 1047;
- //
- public final static int TokenNameabstract = 1050;
- public final static int TokenNamecatch = 1051;
- public final static int TokenNamefinally = 1052;
- public final static int TokenNametry = 1053;
- public final static int TokenNameprivate = 1054;
- public final static int TokenNameprotected = 1055;
- public final static int TokenNamepublic = 1056;
- public final static int TokenNameinterface = 1057;
- public final static int TokenNameimplements = 1058;
- public final static int TokenNameinstanceof = 1059;
- public final static int TokenNamesuper = 1060;
- public final static int TokenNamethrow = 1061;
+public interface ITerminalSymbols {
+ public final static String[] PHP_TYPES = { "array", "string", "object",
+ "bool", "boolean", "real", "double", "float", "int", "integer", };
- public final static int TokenNameconst = 1063;
- public final static int TokenNamedeclare = 1064;
- public final static int TokenNameenddeclare = 1065;
- public final static int TokenNameeval = 1065;
- public final static int TokenNameuse = 1066;
- public final static int TokenNameisset = 1066;
- public final static int TokenNamefinal = 1067;
+ public enum TokenName {
+ NONE_INDENT_BLOCK,
+ NONE, // Pseudo token name; means no token yet available
+ EOF,
+ WHITESPACE,
+ COMMENT_LINE,
+ COMMENT_BLOCK,
+ COMMENT_PHPDOC,
+ // HTML = 904,
+ ERROR,
+ INLINE_HTML,
+ REMAINDER,
+ NOT,
+ DOT,
+ DIVIDE,
+ MULTIPLY,
+ MINUS,
+ PLUS,
+ OP_AT,
+ OP_AND_OLD,
+ OP_OR_OLD,
+ OP_XOR_OLD,
+ OP_XOR,
+ OP_AND,
+ OP_OR,
+ AND_AND,
+ OR_OR,
+ EQUAL_EQUAL,
+ NOT_EQUAL,
+ GREATER,
+ GREATER_EQUAL,
+ LESS,
+ LESS_EQUAL,
+ COLON,
+ DOT_EQUAL,
+ EQUAL,
+ MINUS_GREATER,
+ EQUAL_GREATER,
+ TWIDDLE,
+ TWIDDLE_EQUAL,
+ REMAINDER_EQUAL,
+ RIGHT_SHIFT_EQUAL,
+ LEFT_SHIFT_EQUAL,
+ XOR_EQUAL,
+ AND_EQUAL,
+ OR_EQUAL,
+ QUESTION,
+ TERNARY_SHORT,
+ PAAMAYIM_NEKUDOTAYIM,
+ DOLLAR,
+ DOLLAR_LBRACE,
+ LPAREN,
+ RPAREN,
+ LBRACE,
+ RBRACE,
+ LBRACKET,
+ RBRACKET,
+ COMMA,
+ BACKSLASH,
+ STRINGDOUBLEQUOTE,
+ IDENTIFIER,
+ SEMICOLON,
+ MINUS_MINUS,
+ PLUS_PLUS,
+ PLUS_EQUAL,
+ DIVIDE_EQUAL,
+ MINUS_EQUAL,
+ MULTIPLY_EQUAL,
+ VARIABLE,
+ INTEGERLITERAL,
+ DOUBLELITERAL,
+ STRINGINTERPOLATED,
+ STRINGSINGLEQUOTE,
+ LEFT_SHIFT,
+ RIGHT_SHIFT,
+ EQUAL_EQUAL_EQUAL,
+ NOT_EQUAL_EQUAL,
+ HEREDOC,
+ INTCAST,
+ BOOLCAST,
+ DOUBLECAST,
+ STRINGCAST,
+ ARRAYCAST,
+ OBJECTCAST,
+ UNSETCAST,
+ ENCAPSEDSTRING0,
+ STRING,
+ LBRACE_DOLLAR,
+ SQLSELECT,
+ SQLUPDATE,
+ SQLINSERT,
+ SQLWHERE,
+ SQLFROM,
+ SQLINTO,
+ SQLSET,
+ SQLVALUES,
+ ECHO_INVISIBLE,
+ KEYWORD, // Here the PHP keywords start
+ ABSTRACT,
+ ARRAY,
+ AS,
+ BREAK,
+ CASE,
+ CATCH,
+ CLASS,
+ CLASS_C,
+ CLONE,
+ CONST,
+ CONTINUE,
+ DECLARE,
+ DEFAULT,
+ DO,
+ ECHO,
+ ELSE,
+ ELSEIF,
+ EMPTY,
+ ENDDECLARE,
+ ENDFOR,
+ ENDFOREACH,
+ ENDIF,
+ ENDSWITCH,
+ ENDWHILE,
+ EVAL,
+ EXIT,
+ EXTENDS,
+ FILE,
+ FINAL,
+ FINALLY,
+ FOR,
+ FOREACH,
+ FUNCTION,
+ FUNC_C,
+ GLOBAL,
+ GOTO,
+ IF,
+ IMPLEMENTS,
+ INCLUDE,
+ INCLUDE_ONCE,
+ INSTANCEOF,
+ INTERFACE,
+ ISSET,
+ LINE,
+ LIST,
+ METHOD_C,
+ NAMESPACE,
+ NEW,
+ OLD_FUNCTION,
+ PRINT,
+ PRIVATE,
+ PROTECTED,
+ PUBLIC,
+ REQUIRE,
+ REQUIRE_ONCE,
+ RETURN,
+ STATIC,
+ SUPER,
+ SWITCH,
+ THROW,
+ TRY,
+ UNSET,
+ USE,
+ VAR,
+ WHILE,
+ THIS_PHP_COMPLETION; // special tokens not normally used in the parser
+ };
}