1b29a465257afcf2cc720c9423c2ddedd1edd31a3Danny van Bruggenpackage com.github.javaparser; 29192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen 3b1cd1afb0aaa19f370a169350318496ca7e541bbDanny van Bruggenimport static com.github.javaparser.GeneratedJavaParserConstants.*; 4b29a465257afcf2cc720c9423c2ddedd1edd31a3Danny van Bruggenimport static com.github.javaparser.utils.Utils.EOL; 515cb49e74025eb4011187f31735aa4772993fb5dFederico Tomassetti 64b87b2b6b407077eb064ac949baaa2fbd0487986Federico Tomassetti/** 7b29a465257afcf2cc720c9423c2ddedd1edd31a3Danny van Bruggen * Complements GeneratedJavaParserConstants 84b87b2b6b407077eb064ac949baaa2fbd0487986Federico Tomassetti */ 9b29a465257afcf2cc720c9423c2ddedd1edd31a3Danny van Bruggenpublic class TokenTypes { 106a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen public static boolean isWhitespace(int kind) { 11385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen return getCategory(kind).isWhitespace(); 1215cb49e74025eb4011187f31735aa4772993fb5dFederico Tomassetti } 1315cb49e74025eb4011187f31735aa4772993fb5dFederico Tomassetti 146a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen /** 156a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen * @deprecated use isEndOfLineToken 166a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen */ 176a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen @Deprecated 186a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen public static boolean isEndOfLineCharacter(int kind) { 196a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen return isEndOfLineToken(kind); 206a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen } 216a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen 226a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen public static boolean isEndOfLineToken(int kind) { 23385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen return getCategory(kind).isEndOfLine(); 24b1cd1afb0aaa19f370a169350318496ca7e541bbDanny van Bruggen } 25b1cd1afb0aaa19f370a169350318496ca7e541bbDanny van Bruggen 266a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen public static boolean isWhitespaceOrComment(int kind) { 27385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen return getCategory(kind).isWhitespaceOrComment(); 2815cb49e74025eb4011187f31735aa4772993fb5dFederico Tomassetti } 2915cb49e74025eb4011187f31735aa4772993fb5dFederico Tomassetti 306a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen public static boolean isSpaceOrTab(int kind) { 31385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen return getCategory(kind).isWhitespaceButNotEndOfLine(); 32bd0af28e7b81048d9bda153b908c727304ca8a04Federico Tomassetti } 33bd0af28e7b81048d9bda153b908c727304ca8a04Federico Tomassetti 346a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen public static boolean isComment(int kind) { 35385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen return getCategory(kind).isComment(); 3615cb49e74025eb4011187f31735aa4772993fb5dFederico Tomassetti } 379192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen 38385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen /** 39385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen * @deprecated use eolTokenKind 40385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen */ 41385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen @Deprecated 429192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen public static int eolToken() { 436a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen return eolTokenKind(); 446a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen } 456a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen 46385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen /** 47385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen * @return the kind of EOL token to use on the platform you're running on. 48385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen */ 496a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen public static int eolTokenKind() { 50b29a465257afcf2cc720c9423c2ddedd1edd31a3Danny van Bruggen if (EOL.equals("\n")) { 519192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen return UNIX_EOL; 529192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen } 53b29a465257afcf2cc720c9423c2ddedd1edd31a3Danny van Bruggen if (EOL.equals("\r\n")) { 549192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen return WINDOWS_EOL; 559192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen } 56b29a465257afcf2cc720c9423c2ddedd1edd31a3Danny van Bruggen if (EOL.equals("\r")) { 579192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen return OLD_MAC_EOL; 589192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen } 599192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen throw new AssertionError("Unknown EOL character sequence"); 609192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen } 619192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen 62385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen /** 63385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen * @return the token kind for a single space. 64385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen */ 656a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen public static int spaceTokenKind() { 669192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen return SPACE; 679192b9d17903947058b755b987d1c57a05821e58Danny van Bruggen } 686a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen 69385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen /** 70385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen * @deprecated use spaceTokenKind 71385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen */ 72385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen @Deprecated 736a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen public static int spaceToken() { 746a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen return spaceTokenKind(); 756a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen } 766a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen 776a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen /** 78385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen * Category of a token, a little more detailed than 79385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen * <a href="https://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.5">The JLS</a>. 806a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen */ 816a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen public static JavaToken.Category getCategory(int kind) { 826a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen switch (kind) { 836a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case WINDOWS_EOL: 846a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case UNIX_EOL: 856a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case OLD_MAC_EOL: 86385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen return JavaToken.Category.EOL; 87385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen case EOF: 88385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen case SPACE: 8958ccfe437946e4d6a95d8299cd9f7cbaead82b25Danny van Bruggen case CTRL_Z: 90385e1d8376704c9001c219ca864d5b640a252f16Danny van Bruggen return JavaToken.Category.WHITESPACE_NO_EOL; 916a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case SINGLE_LINE_COMMENT: 9283d60da8afce695e7356af94c549e30ab585448cDanny van Bruggen case JAVADOC_COMMENT: 936a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case MULTI_LINE_COMMENT: 946a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen return JavaToken.Category.COMMENT; 956a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case ABSTRACT: 966a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case ASSERT: 976a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case BOOLEAN: 986a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case BREAK: 996a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case BYTE: 1006a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case CASE: 1016a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case CATCH: 1026a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case CHAR: 1036a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case CLASS: 1046a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case CONST: 1056a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case CONTINUE: 1066a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case _DEFAULT: 1076a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case DO: 1086a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case DOUBLE: 1096a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case ELSE: 1106a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case ENUM: 1116a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case EXTENDS: 1126a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case FALSE: 1136a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case FINAL: 1146a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case FINALLY: 1156a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case FLOAT: 1166a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case FOR: 1176a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case GOTO: 1186a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case IF: 1196a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case IMPLEMENTS: 1206a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case IMPORT: 1216a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case INSTANCEOF: 1226a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case INT: 1236a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case INTERFACE: 1246a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case LONG: 1256a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case NATIVE: 1266a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case NEW: 1276a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case NULL: 1286a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case PACKAGE: 1296a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case PRIVATE: 1306a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case PROTECTED: 1316a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case PUBLIC: 1326a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case RETURN: 1336a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case SHORT: 1346a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case STATIC: 1356a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case STRICTFP: 1366a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case SUPER: 1376a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case SWITCH: 1386a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case SYNCHRONIZED: 1396a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case THIS: 1406a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case THROW: 1416a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case THROWS: 1426a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case TRANSIENT: 1436a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case TRUE: 1446a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case TRY: 1456a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case VOID: 1466a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case VOLATILE: 1476a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case WHILE: 1486a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case REQUIRES: 1496a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case TO: 1506a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case WITH: 1516a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case OPEN: 1526a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case OPENS: 1536a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case USES: 1546a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case MODULE: 1556a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case EXPORTS: 1566a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case PROVIDES: 1576a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case TRANSITIVE: 1586a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen return JavaToken.Category.KEYWORD; 1596a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case LONG_LITERAL: 1606a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case INTEGER_LITERAL: 1616a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case DECIMAL_LITERAL: 1626a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case HEX_LITERAL: 1636a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case OCTAL_LITERAL: 1646a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case BINARY_LITERAL: 1656a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case FLOATING_POINT_LITERAL: 1666a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case DECIMAL_FLOATING_POINT_LITERAL: 1676a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case DECIMAL_EXPONENT: 1686a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case HEXADECIMAL_FLOATING_POINT_LITERAL: 1696a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case HEXADECIMAL_EXPONENT: 1706a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case CHARACTER_LITERAL: 1716a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case STRING_LITERAL: 1726a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen return JavaToken.Category.LITERAL; 1736a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case IDENTIFIER: 1746a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen return JavaToken.Category.IDENTIFIER; 1756a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case LPAREN: 1766a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case RPAREN: 1776a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case LBRACE: 1786a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case RBRACE: 1796a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case LBRACKET: 1806a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case RBRACKET: 1816a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case SEMICOLON: 1826a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case COMMA: 1836a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case DOT: 1846a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case AT: 1856a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen return JavaToken.Category.SEPARATOR; 1866a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case ASSIGN: 1876a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case LT: 1886a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case BANG: 1896a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case TILDE: 1906a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case HOOK: 1916a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case COLON: 1926a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case EQ: 1936a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case LE: 1946a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case GE: 1956a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case NE: 1966a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case SC_OR: 1976a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case SC_AND: 1986a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case INCR: 1996a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case DECR: 2006a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case PLUS: 2016a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case MINUS: 2026a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case STAR: 2036a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case SLASH: 2046a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case BIT_AND: 2056a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case BIT_OR: 2066a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case XOR: 2076a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case REM: 2086a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case LSHIFT: 2096a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case PLUSASSIGN: 2106a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case MINUSASSIGN: 2116a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case STARASSIGN: 2126a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case SLASHASSIGN: 2136a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case ANDASSIGN: 2146a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case ORASSIGN: 2156a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case XORASSIGN: 2166a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case REMASSIGN: 2176a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case LSHIFTASSIGN: 2186a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case RSIGNEDSHIFTASSIGN: 2196a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case RUNSIGNEDSHIFTASSIGN: 2206a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case ELLIPSIS: 2216a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case ARROW: 2226a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case DOUBLECOLON: 2236a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case RUNSIGNEDSHIFT: 2246a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case RSIGNEDSHIFT: 2256a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen case GT: 2266a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen return JavaToken.Category.OPERATOR; 22758ccfe437946e4d6a95d8299cd9f7cbaead82b25Danny van Bruggen // The following are tokens that are only used internally by the lexer 22858ccfe437946e4d6a95d8299cd9f7cbaead82b25Danny van Bruggen case ENTER_JAVADOC_COMMENT: 22958ccfe437946e4d6a95d8299cd9f7cbaead82b25Danny van Bruggen case ENTER_MULTILINE_COMMENT: 23058ccfe437946e4d6a95d8299cd9f7cbaead82b25Danny van Bruggen case COMMENT_CONTENT: 23158ccfe437946e4d6a95d8299cd9f7cbaead82b25Danny van Bruggen case HEX_DIGITS: 23258ccfe437946e4d6a95d8299cd9f7cbaead82b25Danny van Bruggen case LETTER: 23358ccfe437946e4d6a95d8299cd9f7cbaead82b25Danny van Bruggen case UNICODE_ESCAPE: 23458ccfe437946e4d6a95d8299cd9f7cbaead82b25Danny van Bruggen case PART_LETTER: 2356a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen default: 2366a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen throw new AssertionError("Invalid token kind " + kind); 2376a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen } 2386a1ee724c337694ee28b2a09af41c236b880ba66Danny van Bruggen } 2394b87b2b6b407077eb064ac949baaa2fbd0487986Federico Tomassetti} 240