diff --git a/compiler/frontend/src/org/jetbrains/kotlin/kdoc/lexer/_KDocLexer.java b/compiler/frontend/src/org/jetbrains/kotlin/kdoc/lexer/_KDocLexer.java index 340d2f2aa7c..d1858a3124f 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/kdoc/lexer/_KDocLexer.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/kdoc/lexer/_KDocLexer.java @@ -1,4 +1,4 @@ -/* The following code was generated by JFlex 1.4.3 on 11/27/15 4:10 PM */ +/* The following code was generated by JFlex 1.4.3 on 11/27/15 4:27 PM */ package org.jetbrains.kotlin.kdoc.lexer; @@ -13,7 +13,7 @@ import org.jetbrains.kotlin.kdoc.parser.KDocKnownTag; /** * This class is a scanner generated by * JFlex 1.4.3 - * on 11/27/15 4:10 PM from the specification file + * on 11/27/15 4:27 PM from the specification file * /Users/abreslav/work/kotlin/compiler/frontend/src/org/jetbrains/kotlin/kdoc/lexer/KDoc.flex */ class _KDocLexer implements FlexLexer { diff --git a/compiler/frontend/src/org/jetbrains/kotlin/lexer/Kotlin.flex b/compiler/frontend/src/org/jetbrains/kotlin/lexer/Kotlin.flex index 623586cd746..81ad34e5a2b 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/lexer/Kotlin.flex +++ b/compiler/frontend/src/org/jetbrains/kotlin/lexer/Kotlin.flex @@ -251,7 +251,6 @@ LONG_TEMPLATE_ENTRY_START=\$\{ "this" { return KtTokens.THIS_KEYWORD ;} "null" { return KtTokens.NULL_KEYWORD ;} "else" { return KtTokens.ELSE_KEYWORD ;} -"This" { return KtTokens.CAPITALIZED_THIS_KEYWORD ;} "try" { return KtTokens.TRY_KEYWORD ;} "val" { return KtTokens.VAL_KEYWORD ;} "var" { return KtTokens.VAR_KEYWORD ;} diff --git a/compiler/frontend/src/org/jetbrains/kotlin/lexer/KtTokens.java b/compiler/frontend/src/org/jetbrains/kotlin/lexer/KtTokens.java index e44f1bba7ce..5901f46931d 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/lexer/KtTokens.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/lexer/KtTokens.java @@ -76,9 +76,6 @@ public interface KtTokens { KtKeywordToken DO_KEYWORD = KtKeywordToken.keyword("do"); KtKeywordToken WHEN_KEYWORD = KtKeywordToken.keyword("when"); KtKeywordToken INTERFACE_KEYWORD = KtKeywordToken.keyword("interface"); - // TODO: Discuss "This" keyword - KtKeywordToken CAPITALIZED_THIS_KEYWORD = KtKeywordToken.keyword("This"); - KtToken AS_SAFE = KtKeywordToken.keyword("AS_SAFE");//new KtToken("as?"); @@ -191,7 +188,7 @@ public interface KtTokens { TRUE_KEYWORD, FALSE_KEYWORD, IS_KEYWORD, IN_KEYWORD, THROW_KEYWORD, RETURN_KEYWORD, BREAK_KEYWORD, CONTINUE_KEYWORD, OBJECT_KEYWORD, IF_KEYWORD, ELSE_KEYWORD, WHILE_KEYWORD, DO_KEYWORD, TRY_KEYWORD, WHEN_KEYWORD, - NOT_IN, NOT_IS, CAPITALIZED_THIS_KEYWORD, AS_SAFE + NOT_IN, NOT_IS, AS_SAFE ); TokenSet SOFT_KEYWORDS = TokenSet.create(FILE_KEYWORD, IMPORT_KEYWORD, WHERE_KEYWORD, BY_KEYWORD, GET_KEYWORD, diff --git a/compiler/frontend/src/org/jetbrains/kotlin/lexer/_JetLexer.java b/compiler/frontend/src/org/jetbrains/kotlin/lexer/_JetLexer.java index c2203f9db6e..0c5465e7794 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/lexer/_JetLexer.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/lexer/_JetLexer.java @@ -1,4 +1,4 @@ -/* The following code was generated by JFlex 1.4.3 on 11/27/15 4:10 PM */ +/* The following code was generated by JFlex 1.4.3 on 11/27/15 4:27 PM */ package org.jetbrains.kotlin.lexer; @@ -14,7 +14,7 @@ import org.jetbrains.kotlin.lexer.KtTokens; /** * This class is a scanner generated by * JFlex 1.4.3 - * on 11/27/15 4:10 PM from the specification file + * on 11/27/15 4:27 PM from the specification file * /Users/abreslav/work/kotlin/compiler/frontend/src/org/jetbrains/kotlin/lexer/Kotlin.flex */ class _JetLexer implements FlexLexer { @@ -45,91 +45,91 @@ class _JetLexer implements FlexLexer { */ private static final String ZZ_CMAP_PACKED = "\11\0\1\3\1\7\1\0\1\3\23\0\1\3\1\13\1\27\1\12"+ - "\1\10\1\70\1\66\1\24\1\74\1\75\1\36\1\63\1\77\1\23"+ - "\1\20\1\11\1\14\11\1\1\71\1\76\1\64\1\61\1\65\1\62"+ - "\1\100\1\2\1\16\2\2\1\22\1\21\5\4\1\17\7\4\1\56"+ - "\3\4\1\15\2\4\1\72\1\25\1\73\1\0\1\4\1\6\1\42"+ - "\1\53\1\47\1\60\1\41\1\46\1\52\1\32\1\33\1\54\1\51"+ - "\1\43\1\4\1\44\1\50\1\40\1\4\1\45\1\34\1\31\1\26"+ - "\1\57\1\55\1\15\1\37\1\4\1\30\1\67\1\35\54\0\1\4"+ - "\12\0\1\4\4\0\1\4\5\0\27\4\1\0\37\4\1\0\u01ca\4"+ - "\4\0\14\4\16\0\5\4\7\0\1\4\1\0\1\4\201\0\5\4"+ - "\1\0\2\4\2\0\4\4\10\0\1\4\1\0\3\4\1\0\1\4"+ - "\1\0\24\4\1\0\123\4\1\0\213\4\10\0\236\4\11\0\46\4"+ - "\2\0\1\4\7\0\47\4\110\0\33\4\5\0\3\4\55\0\53\4"+ - "\25\0\12\5\4\0\2\4\1\0\143\4\1\0\1\4\17\0\2\4"+ - "\7\0\2\4\12\5\3\4\2\0\1\4\20\0\1\4\1\0\36\4"+ - "\35\0\131\4\13\0\1\4\16\0\12\5\41\4\11\0\2\4\4\0"+ - "\1\4\5\0\26\4\4\0\1\4\11\0\1\4\3\0\1\4\27\0"+ - "\31\4\253\0\66\4\3\0\1\4\22\0\1\4\7\0\12\4\4\0"+ - "\12\5\1\0\7\4\1\0\7\4\5\0\10\4\2\0\2\4\2\0"+ - "\26\4\1\0\7\4\1\0\1\4\3\0\4\4\3\0\1\4\20\0"+ - "\1\4\15\0\2\4\1\0\3\4\4\0\12\5\2\4\23\0\6\4"+ - "\4\0\2\4\2\0\26\4\1\0\7\4\1\0\2\4\1\0\2\4"+ - "\1\0\2\4\37\0\4\4\1\0\1\4\7\0\12\5\2\0\3\4"+ - "\20\0\11\4\1\0\3\4\1\0\26\4\1\0\7\4\1\0\2\4"+ - "\1\0\5\4\3\0\1\4\22\0\1\4\17\0\2\4\4\0\12\5"+ - "\25\0\10\4\2\0\2\4\2\0\26\4\1\0\7\4\1\0\2\4"+ - "\1\0\5\4\3\0\1\4\36\0\2\4\1\0\3\4\4\0\12\5"+ - "\1\0\1\4\21\0\1\4\1\0\6\4\3\0\3\4\1\0\4\4"+ - "\3\0\2\4\1\0\1\4\1\0\2\4\3\0\2\4\3\0\3\4"+ - "\3\0\14\4\26\0\1\4\25\0\12\5\25\0\10\4\1\0\3\4"+ - "\1\0\27\4\1\0\12\4\1\0\5\4\3\0\1\4\32\0\2\4"+ - "\6\0\2\4\4\0\12\5\25\0\10\4\1\0\3\4\1\0\27\4"+ - "\1\0\12\4\1\0\5\4\3\0\1\4\40\0\1\4\1\0\2\4"+ - "\4\0\12\5\1\0\2\4\22\0\10\4\1\0\3\4\1\0\51\4"+ - "\2\0\1\4\20\0\1\4\21\0\2\4\4\0\12\5\12\0\6\4"+ - "\5\0\22\4\3\0\30\4\1\0\11\4\1\0\1\4\2\0\7\4"+ - "\72\0\60\4\1\0\2\4\14\0\7\4\11\0\12\5\47\0\2\4"+ - "\1\0\1\4\2\0\2\4\1\0\1\4\2\0\1\4\6\0\4\4"+ - "\1\0\7\4\1\0\3\4\1\0\1\4\1\0\1\4\2\0\2\4"+ - "\1\0\4\4\1\0\2\4\11\0\1\4\2\0\5\4\1\0\1\4"+ - "\11\0\12\5\2\0\2\4\42\0\1\4\37\0\12\5\26\0\10\4"+ - "\1\0\44\4\33\0\5\4\163\0\53\4\24\0\1\4\12\5\6\0"+ - "\6\4\4\0\4\4\3\0\1\4\3\0\2\4\7\0\3\4\4\0"+ - "\15\4\14\0\1\4\1\0\12\5\6\0\46\4\12\0\53\4\1\0"+ - "\1\4\3\0\u0149\4\1\0\4\4\2\0\7\4\1\0\1\4\1\0"+ - "\4\4\2\0\51\4\1\0\4\4\2\0\41\4\1\0\4\4\2\0"+ - "\7\4\1\0\1\4\1\0\4\4\2\0\17\4\1\0\71\4\1\0"+ - "\4\4\2\0\103\4\45\0\20\4\20\0\125\4\14\0\u026c\4\2\0"+ - "\21\4\1\0\32\4\5\0\113\4\25\0\15\4\1\0\4\4\16\0"+ - "\22\4\16\0\22\4\16\0\15\4\1\0\3\4\17\0\64\4\43\0"+ - "\1\4\4\0\1\4\3\0\12\5\46\0\12\5\6\0\130\4\10\0"+ - "\51\4\1\0\1\4\5\0\106\4\12\0\35\4\51\0\12\5\36\4"+ - "\2\0\5\4\13\0\54\4\25\0\7\4\10\0\12\5\46\0\27\4"+ - "\11\0\65\4\53\0\12\5\6\0\12\5\15\0\1\4\135\0\57\4"+ - "\21\0\7\4\4\0\12\5\51\0\36\4\15\0\2\4\12\5\6\0"+ - "\46\4\32\0\44\4\34\0\12\5\3\0\3\4\12\5\44\4\153\0"+ - "\4\4\1\0\4\4\16\0\300\4\100\0\u0116\4\2\0\6\4\2\0"+ - "\46\4\2\0\6\4\2\0\10\4\1\0\1\4\1\0\1\4\1\0"+ - "\1\4\1\0\37\4\2\0\65\4\1\0\7\4\1\0\1\4\3\0"+ - "\3\4\1\0\7\4\3\0\4\4\2\0\6\4\4\0\15\4\5\0"+ - "\3\4\1\0\7\4\164\0\1\4\15\0\1\4\20\0\15\4\145\0"+ - "\1\4\4\0\1\4\2\0\12\4\1\0\1\4\3\0\5\4\6\0"+ - "\1\4\1\0\1\4\1\0\1\4\1\0\4\4\1\0\13\4\2\0"+ - "\4\4\5\0\5\4\4\0\1\4\64\0\2\4\u0a7b\0\57\4\1\0"+ - "\57\4\1\0\205\4\6\0\4\4\21\0\46\4\12\0\66\4\11\0"+ - "\1\4\20\0\27\4\11\0\7\4\1\0\7\4\1\0\7\4\1\0"+ - "\7\4\1\0\7\4\1\0\7\4\1\0\7\4\1\0\7\4\120\0"+ - "\1\4\u01d5\0\2\4\52\0\5\4\5\0\2\4\4\0\126\4\6\0"+ - "\3\4\1\0\132\4\1\0\4\4\5\0\51\4\3\0\136\4\21\0"+ - "\33\4\65\0\20\4\u0200\0\u19b6\4\112\0\u51cc\4\64\0\u048d\4\103\0"+ - "\56\4\2\0\u010d\4\3\0\20\4\12\5\2\4\24\0\57\4\20\0"+ - "\31\4\10\0\106\4\61\0\11\4\2\0\147\4\2\0\4\4\1\0"+ - "\2\4\16\0\12\4\120\0\10\4\1\0\3\4\1\0\4\4\1\0"+ - "\27\4\35\0\64\4\16\0\62\4\34\0\12\5\30\0\6\4\3\0"+ - "\1\4\4\0\12\5\34\4\12\0\27\4\31\0\35\4\7\0\57\4"+ - "\34\0\1\4\12\5\46\0\51\4\27\0\3\4\1\0\10\4\4\0"+ - "\12\5\6\0\27\4\3\0\1\4\5\0\60\4\1\0\1\4\3\0"+ - "\2\4\2\0\5\4\2\0\1\4\1\0\1\4\30\0\3\4\43\0"+ - "\6\4\2\0\6\4\2\0\6\4\11\0\7\4\1\0\7\4\221\0"+ - "\43\4\15\0\12\5\6\0\u2ba4\4\14\0\27\4\4\0\61\4\u2104\0"+ - "\u012e\4\2\0\76\4\2\0\152\4\46\0\7\4\14\0\5\4\5\0"+ - "\1\4\1\0\12\4\1\0\15\4\1\0\5\4\1\0\1\4\1\0"+ - "\2\4\1\0\2\4\1\0\154\4\41\0\u016b\4\22\0\100\4\2\0"+ - "\66\4\50\0\14\4\164\0\5\4\1\0\207\4\23\0\12\5\7\0"+ - "\32\4\6\0\32\4\13\0\131\4\3\0\6\4\2\0\6\4\2\0"+ - "\6\4\2\0\3\4\43\0"; + "\1\10\1\67\1\65\1\24\1\73\1\74\1\36\1\62\1\76\1\23"+ + "\1\20\1\11\1\14\11\1\1\70\1\75\1\63\1\60\1\64\1\61"+ + "\1\77\1\2\1\16\2\2\1\22\1\21\5\4\1\17\13\4\1\15"+ + "\2\4\1\71\1\25\1\72\1\0\1\4\1\6\1\42\1\53\1\47"+ + "\1\57\1\41\1\46\1\52\1\32\1\33\1\54\1\51\1\43\1\4"+ + "\1\44\1\50\1\40\1\4\1\45\1\34\1\31\1\26\1\56\1\55"+ + "\1\15\1\37\1\4\1\30\1\66\1\35\54\0\1\4\12\0\1\4"+ + "\4\0\1\4\5\0\27\4\1\0\37\4\1\0\u01ca\4\4\0\14\4"+ + "\16\0\5\4\7\0\1\4\1\0\1\4\201\0\5\4\1\0\2\4"+ + "\2\0\4\4\10\0\1\4\1\0\3\4\1\0\1\4\1\0\24\4"+ + "\1\0\123\4\1\0\213\4\10\0\236\4\11\0\46\4\2\0\1\4"+ + "\7\0\47\4\110\0\33\4\5\0\3\4\55\0\53\4\25\0\12\5"+ + "\4\0\2\4\1\0\143\4\1\0\1\4\17\0\2\4\7\0\2\4"+ + "\12\5\3\4\2\0\1\4\20\0\1\4\1\0\36\4\35\0\131\4"+ + "\13\0\1\4\16\0\12\5\41\4\11\0\2\4\4\0\1\4\5\0"+ + "\26\4\4\0\1\4\11\0\1\4\3\0\1\4\27\0\31\4\253\0"+ + "\66\4\3\0\1\4\22\0\1\4\7\0\12\4\4\0\12\5\1\0"+ + "\7\4\1\0\7\4\5\0\10\4\2\0\2\4\2\0\26\4\1\0"+ + "\7\4\1\0\1\4\3\0\4\4\3\0\1\4\20\0\1\4\15\0"+ + "\2\4\1\0\3\4\4\0\12\5\2\4\23\0\6\4\4\0\2\4"+ + "\2\0\26\4\1\0\7\4\1\0\2\4\1\0\2\4\1\0\2\4"+ + "\37\0\4\4\1\0\1\4\7\0\12\5\2\0\3\4\20\0\11\4"+ + "\1\0\3\4\1\0\26\4\1\0\7\4\1\0\2\4\1\0\5\4"+ + "\3\0\1\4\22\0\1\4\17\0\2\4\4\0\12\5\25\0\10\4"+ + "\2\0\2\4\2\0\26\4\1\0\7\4\1\0\2\4\1\0\5\4"+ + "\3\0\1\4\36\0\2\4\1\0\3\4\4\0\12\5\1\0\1\4"+ + "\21\0\1\4\1\0\6\4\3\0\3\4\1\0\4\4\3\0\2\4"+ + "\1\0\1\4\1\0\2\4\3\0\2\4\3\0\3\4\3\0\14\4"+ + "\26\0\1\4\25\0\12\5\25\0\10\4\1\0\3\4\1\0\27\4"+ + "\1\0\12\4\1\0\5\4\3\0\1\4\32\0\2\4\6\0\2\4"+ + "\4\0\12\5\25\0\10\4\1\0\3\4\1\0\27\4\1\0\12\4"+ + "\1\0\5\4\3\0\1\4\40\0\1\4\1\0\2\4\4\0\12\5"+ + "\1\0\2\4\22\0\10\4\1\0\3\4\1\0\51\4\2\0\1\4"+ + "\20\0\1\4\21\0\2\4\4\0\12\5\12\0\6\4\5\0\22\4"+ + "\3\0\30\4\1\0\11\4\1\0\1\4\2\0\7\4\72\0\60\4"+ + "\1\0\2\4\14\0\7\4\11\0\12\5\47\0\2\4\1\0\1\4"+ + "\2\0\2\4\1\0\1\4\2\0\1\4\6\0\4\4\1\0\7\4"+ + "\1\0\3\4\1\0\1\4\1\0\1\4\2\0\2\4\1\0\4\4"+ + "\1\0\2\4\11\0\1\4\2\0\5\4\1\0\1\4\11\0\12\5"+ + "\2\0\2\4\42\0\1\4\37\0\12\5\26\0\10\4\1\0\44\4"+ + "\33\0\5\4\163\0\53\4\24\0\1\4\12\5\6\0\6\4\4\0"+ + "\4\4\3\0\1\4\3\0\2\4\7\0\3\4\4\0\15\4\14\0"+ + "\1\4\1\0\12\5\6\0\46\4\12\0\53\4\1\0\1\4\3\0"+ + "\u0149\4\1\0\4\4\2\0\7\4\1\0\1\4\1\0\4\4\2\0"+ + "\51\4\1\0\4\4\2\0\41\4\1\0\4\4\2\0\7\4\1\0"+ + "\1\4\1\0\4\4\2\0\17\4\1\0\71\4\1\0\4\4\2\0"+ + "\103\4\45\0\20\4\20\0\125\4\14\0\u026c\4\2\0\21\4\1\0"+ + "\32\4\5\0\113\4\25\0\15\4\1\0\4\4\16\0\22\4\16\0"+ + "\22\4\16\0\15\4\1\0\3\4\17\0\64\4\43\0\1\4\4\0"+ + "\1\4\3\0\12\5\46\0\12\5\6\0\130\4\10\0\51\4\1\0"+ + "\1\4\5\0\106\4\12\0\35\4\51\0\12\5\36\4\2\0\5\4"+ + "\13\0\54\4\25\0\7\4\10\0\12\5\46\0\27\4\11\0\65\4"+ + "\53\0\12\5\6\0\12\5\15\0\1\4\135\0\57\4\21\0\7\4"+ + "\4\0\12\5\51\0\36\4\15\0\2\4\12\5\6\0\46\4\32\0"+ + "\44\4\34\0\12\5\3\0\3\4\12\5\44\4\153\0\4\4\1\0"+ + "\4\4\16\0\300\4\100\0\u0116\4\2\0\6\4\2\0\46\4\2\0"+ + "\6\4\2\0\10\4\1\0\1\4\1\0\1\4\1\0\1\4\1\0"+ + "\37\4\2\0\65\4\1\0\7\4\1\0\1\4\3\0\3\4\1\0"+ + "\7\4\3\0\4\4\2\0\6\4\4\0\15\4\5\0\3\4\1\0"+ + "\7\4\164\0\1\4\15\0\1\4\20\0\15\4\145\0\1\4\4\0"+ + "\1\4\2\0\12\4\1\0\1\4\3\0\5\4\6\0\1\4\1\0"+ + "\1\4\1\0\1\4\1\0\4\4\1\0\13\4\2\0\4\4\5\0"+ + "\5\4\4\0\1\4\64\0\2\4\u0a7b\0\57\4\1\0\57\4\1\0"+ + "\205\4\6\0\4\4\21\0\46\4\12\0\66\4\11\0\1\4\20\0"+ + "\27\4\11\0\7\4\1\0\7\4\1\0\7\4\1\0\7\4\1\0"+ + "\7\4\1\0\7\4\1\0\7\4\1\0\7\4\120\0\1\4\u01d5\0"+ + "\2\4\52\0\5\4\5\0\2\4\4\0\126\4\6\0\3\4\1\0"+ + "\132\4\1\0\4\4\5\0\51\4\3\0\136\4\21\0\33\4\65\0"+ + "\20\4\u0200\0\u19b6\4\112\0\u51cc\4\64\0\u048d\4\103\0\56\4\2\0"+ + "\u010d\4\3\0\20\4\12\5\2\4\24\0\57\4\20\0\31\4\10\0"+ + "\106\4\61\0\11\4\2\0\147\4\2\0\4\4\1\0\2\4\16\0"+ + "\12\4\120\0\10\4\1\0\3\4\1\0\4\4\1\0\27\4\35\0"+ + "\64\4\16\0\62\4\34\0\12\5\30\0\6\4\3\0\1\4\4\0"+ + "\12\5\34\4\12\0\27\4\31\0\35\4\7\0\57\4\34\0\1\4"+ + "\12\5\46\0\51\4\27\0\3\4\1\0\10\4\4\0\12\5\6\0"+ + "\27\4\3\0\1\4\5\0\60\4\1\0\1\4\3\0\2\4\2\0"+ + "\5\4\2\0\1\4\1\0\1\4\30\0\3\4\43\0\6\4\2\0"+ + "\6\4\2\0\6\4\11\0\7\4\1\0\7\4\221\0\43\4\15\0"+ + "\12\5\6\0\u2ba4\4\14\0\27\4\4\0\61\4\u2104\0\u012e\4\2\0"+ + "\76\4\2\0\152\4\46\0\7\4\14\0\5\4\5\0\1\4\1\0"+ + "\12\4\1\0\15\4\1\0\5\4\1\0\1\4\1\0\2\4\1\0"+ + "\2\4\1\0\154\4\41\0\u016b\4\22\0\100\4\2\0\66\4\50\0"+ + "\14\4\164\0\5\4\1\0\207\4\23\0\12\5\7\0\32\4\6\0"+ + "\32\4\13\0\131\4\3\0\6\4\2\0\6\4\2\0\6\4\2\0"+ + "\3\4\43\0"; /** * Translates characters to character classes @@ -144,27 +144,27 @@ class _JetLexer implements FlexLexer { private static final String ZZ_ACTION_PACKED_0 = "\6\0\1\1\1\2\1\3\1\4\2\1\1\5\1\6"+ "\1\7\1\2\1\10\1\11\1\12\1\13\1\14\3\3"+ - "\1\15\1\16\15\3\1\17\1\20\1\21\1\22\1\23"+ + "\1\15\1\16\14\3\1\17\1\20\1\21\1\22\1\23"+ "\2\1\1\24\1\25\1\26\1\27\1\30\1\31\1\32"+ "\1\33\1\34\1\35\1\36\1\35\1\1\1\37\2\35"+ "\1\40\1\1\1\40\3\41\1\42\1\43\1\2\1\0"+ "\2\44\1\0\1\45\1\0\1\46\1\47\1\50\1\51"+ "\1\0\1\52\1\0\2\2\1\44\1\53\1\54\1\55"+ "\1\56\2\12\1\0\3\3\1\57\1\60\1\61\1\3"+ - "\1\62\2\3\1\63\14\3\1\64\1\65\1\66\1\67"+ + "\1\62\2\3\1\63\13\3\1\64\1\65\1\66\1\67"+ "\1\70\1\71\1\72\1\73\1\74\1\75\1\76\1\77"+ "\1\100\1\0\1\101\2\102\2\0\1\40\1\103\1\104"+ "\1\0\1\105\1\44\1\3\1\0\1\106\1\107\1\110"+ "\1\111\1\0\1\112\1\113\4\3\1\114\4\3\1\115"+ - "\2\3\1\116\1\3\1\117\7\3\1\120\1\121\1\122"+ + "\2\3\1\116\1\3\1\117\6\3\1\120\1\121\1\122"+ "\2\0\1\123\2\40\1\45\1\124\1\125\1\126\2\3"+ - "\1\127\3\3\1\130\1\131\7\3\1\132\1\133\1\100"+ - "\1\0\1\134\1\135\2\3\1\136\2\3\1\137\1\140"+ - "\2\3\1\141\1\142\1\0\3\3\1\143\1\3\1\144"+ - "\2\3\1\145\3\3\1\146\1\147\1\150"; + "\1\127\3\3\1\130\1\131\7\3\1\132\1\100\1\0"+ + "\1\133\1\134\2\3\1\135\2\3\1\136\1\137\2\3"+ + "\1\140\1\141\1\0\3\3\1\142\1\3\1\143\2\3"+ + "\1\144\3\3\1\145\1\146\1\147"; private static int [] zzUnpackAction() { - int [] result = new int[233]; + int [] result = new int[229]; int offset = 0; offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); return result; @@ -189,39 +189,38 @@ class _JetLexer implements FlexLexer { private static final int [] ZZ_ROWMAP = zzUnpackRowMap(); private static final String ZZ_ROWMAP_PACKED_0 = - "\0\0\0\101\0\202\0\303\0\u0104\0\u0145\0\u0186\0\u01c7"+ - "\0\u0208\0\u0249\0\u028a\0\u02cb\0\u030c\0\u034d\0\u038e\0\u03cf"+ - "\0\u0410\0\u0451\0\u0492\0\u04d3\0\u0186\0\u0514\0\u0555\0\u0596"+ - "\0\u0186\0\u05d7\0\u0618\0\u0659\0\u069a\0\u06db\0\u071c\0\u075d"+ - "\0\u079e\0\u07df\0\u0820\0\u0861\0\u08a2\0\u08e3\0\u0924\0\u0965"+ - "\0\u0186\0\u09a6\0\u09e7\0\u0a28\0\u0a69\0\u0aaa\0\u0aeb\0\u0b2c"+ - "\0\u0186\0\u0186\0\u0186\0\u0186\0\u0b6d\0\u0186\0\u0186\0\u0bae"+ - "\0\u0186\0\u0bef\0\u0c30\0\u0186\0\u0186\0\u0c71\0\u0cb2\0\u0cf3"+ - "\0\u0d34\0\u0186\0\u0d75\0\u0db6\0\u0186\0\u0186\0\u0df7\0\u0e38"+ - "\0\u0186\0\u0e79\0\u0eba\0\u0efb\0\u0f3c\0\u0f7d\0\u0fbe\0\u0186"+ - "\0\u0fff\0\u1040\0\u1081\0\u10c2\0\u1103\0\u1144\0\u1185\0\u11c6"+ - "\0\u0186\0\u0186\0\u0186\0\u0186\0\u1207\0\u1248\0\u1289\0\u12ca"+ - "\0\u130b\0\u0208\0\u134c\0\u0208\0\u138d\0\u0186\0\u13ce\0\u140f"+ - "\0\u1450\0\u1491\0\u14d2\0\u1513\0\u1554\0\u1595\0\u15d6\0\u1617"+ - "\0\u1658\0\u1699\0\u16da\0\u171b\0\u175c\0\u0208\0\u179d\0\u0186"+ - "\0\u0186\0\u0186\0\u0186\0\u0186\0\u0186\0\u0186\0\u0186\0\u0186"+ - "\0\u0186\0\u17de\0\u181f\0\u0186\0\u0186\0\u1860\0\u18a1\0\u18e2"+ - "\0\u1923\0\u0186\0\u0186\0\u1964\0\u0186\0\u19a5\0\u0186\0\u19e6"+ - "\0\u1a27\0\u1a68\0\u1a68\0\u0186\0\u1aa9\0\u0186\0\u0186\0\u1aea"+ - "\0\u1b2b\0\u1b6c\0\u1bad\0\u0208\0\u1bee\0\u1c2f\0\u1c70\0\u1cb1"+ - "\0\u0186\0\u1cf2\0\u1d33\0\u0208\0\u1d74\0\u0208\0\u1db5\0\u1df6"+ - "\0\u1e37\0\u1e78\0\u1eb9\0\u1efa\0\u1f3b\0\u0208\0\u0208\0\u0186"+ - "\0\u1f7c\0\u1fbd\0\u18a1\0\u0186\0\u1ffe\0\u0186\0\u0186\0\u0186"+ - "\0\u0208\0\u203f\0\u2080\0\u0208\0\u20c1\0\u2102\0\u2143\0\u0208"+ - "\0\u0208\0\u2184\0\u21c5\0\u2206\0\u2247\0\u2288\0\u22c9\0\u230a"+ - "\0\u0208\0\u0208\0\u0186\0\u234b\0\u0cb2\0\u0208\0\u238c\0\u23cd"+ - "\0\u0208\0\u240e\0\u244f\0\u0208\0\u0208\0\u2490\0\u24d1\0\u0208"+ - "\0\u0208\0\u2512\0\u2553\0\u2594\0\u25d5\0\u0208\0\u2616\0\u0208"+ - "\0\u2657\0\u2698\0\u0208\0\u26d9\0\u271a\0\u275b\0\u0208\0\u0208"+ - "\0\u0208"; + "\0\0\0\100\0\200\0\300\0\u0100\0\u0140\0\u0180\0\u01c0"+ + "\0\u0200\0\u0240\0\u0280\0\u02c0\0\u0300\0\u0340\0\u0380\0\u03c0"+ + "\0\u0400\0\u0440\0\u0480\0\u04c0\0\u0180\0\u0500\0\u0540\0\u0580"+ + "\0\u0180\0\u05c0\0\u0600\0\u0640\0\u0680\0\u06c0\0\u0700\0\u0740"+ + "\0\u0780\0\u07c0\0\u0800\0\u0840\0\u0880\0\u08c0\0\u0900\0\u0180"+ + "\0\u0940\0\u0980\0\u09c0\0\u0a00\0\u0a40\0\u0a80\0\u0ac0\0\u0180"+ + "\0\u0180\0\u0180\0\u0180\0\u0b00\0\u0180\0\u0180\0\u0b40\0\u0180"+ + "\0\u0b80\0\u0bc0\0\u0180\0\u0180\0\u0c00\0\u0c40\0\u0c80\0\u0cc0"+ + "\0\u0180\0\u0d00\0\u0d40\0\u0180\0\u0180\0\u0d80\0\u0dc0\0\u0180"+ + "\0\u0e00\0\u0e40\0\u0e80\0\u0ec0\0\u0f00\0\u0f40\0\u0180\0\u0f80"+ + "\0\u0fc0\0\u1000\0\u1040\0\u1080\0\u10c0\0\u1100\0\u1140\0\u0180"+ + "\0\u0180\0\u0180\0\u0180\0\u1180\0\u11c0\0\u1200\0\u1240\0\u1280"+ + "\0\u0200\0\u12c0\0\u0200\0\u1300\0\u0180\0\u1340\0\u1380\0\u13c0"+ + "\0\u1400\0\u1440\0\u1480\0\u14c0\0\u1500\0\u1540\0\u1580\0\u15c0"+ + "\0\u1600\0\u1640\0\u1680\0\u0200\0\u16c0\0\u0180\0\u0180\0\u0180"+ + "\0\u0180\0\u0180\0\u0180\0\u0180\0\u0180\0\u0180\0\u0180\0\u1700"+ + "\0\u1740\0\u0180\0\u0180\0\u1780\0\u17c0\0\u1800\0\u1840\0\u0180"+ + "\0\u0180\0\u1880\0\u0180\0\u18c0\0\u0180\0\u1900\0\u1940\0\u1980"+ + "\0\u1980\0\u0180\0\u19c0\0\u0180\0\u0180\0\u1a00\0\u1a40\0\u1a80"+ + "\0\u1ac0\0\u0200\0\u1b00\0\u1b40\0\u1b80\0\u1bc0\0\u0180\0\u1c00"+ + "\0\u1c40\0\u0200\0\u1c80\0\u0200\0\u1cc0\0\u1d00\0\u1d40\0\u1d80"+ + "\0\u1dc0\0\u1e00\0\u0200\0\u0200\0\u0180\0\u1e40\0\u1e80\0\u17c0"+ + "\0\u0180\0\u1ec0\0\u0180\0\u0180\0\u0180\0\u0200\0\u1f00\0\u1f40"+ + "\0\u0200\0\u1f80\0\u1fc0\0\u2000\0\u0200\0\u0200\0\u2040\0\u2080"+ + "\0\u20c0\0\u2100\0\u2140\0\u2180\0\u21c0\0\u0200\0\u0180\0\u2200"+ + "\0\u0c40\0\u0200\0\u2240\0\u2280\0\u0200\0\u22c0\0\u2300\0\u0200"+ + "\0\u0200\0\u2340\0\u2380\0\u0200\0\u0200\0\u23c0\0\u2400\0\u2440"+ + "\0\u2480\0\u0200\0\u24c0\0\u0200\0\u2500\0\u2540\0\u0200\0\u2580"+ + "\0\u25c0\0\u2600\0\u0200\0\u0200\0\u0200"; private static int [] zzUnpackRowMap() { - int [] result = new int[233]; + int [] result = new int[229]; int offset = 0; offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); return result; @@ -251,244 +250,238 @@ class _JetLexer implements FlexLexer { "\1\11\1\36\1\37\1\40\1\41\1\42\2\11\1\43"+ "\1\11\1\44\1\45\1\46\1\47\1\50\1\51\1\52"+ "\1\53\1\54\1\55\1\56\1\57\1\60\1\61\1\62"+ - "\1\63\1\64\1\65\1\66\1\67\7\70\1\71\1\72"+ - "\14\70\1\73\1\70\1\74\60\70\1\75\1\72\14\70"+ - "\1\75\1\70\1\76\51\70\2\7\1\77\1\7\1\77"+ - "\1\7\1\100\1\0\5\7\3\77\1\7\2\77\3\7"+ - "\1\77\2\7\1\101\3\77\2\7\22\77\20\7\11\102"+ - "\1\103\24\102\1\104\42\102\1\7\1\10\1\11\1\12"+ - "\1\11\1\7\1\13\1\12\1\14\1\15\1\16\1\17"+ - "\1\20\3\11\1\21\2\11\1\22\1\23\1\7\1\11"+ - "\1\24\1\105\1\26\1\11\1\27\1\30\1\106\1\32"+ - "\1\11\1\33\1\34\1\35\1\11\1\36\1\37\1\40"+ - "\1\41\1\42\2\11\1\43\1\11\1\44\1\45\1\46"+ - "\1\47\1\50\1\51\1\52\1\53\1\54\1\55\1\56"+ - "\1\57\1\60\1\61\1\62\1\63\1\64\1\65\1\66"+ - "\1\67\102\0\1\10\12\0\1\10\2\0\1\107\1\110"+ - "\1\111\1\112\16\0\1\112\1\0\1\107\2\0\1\111"+ - "\33\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\22\11\23\0\1\12"+ - "\3\0\1\12\71\0\6\113\2\0\71\113\2\0\1\114"+ - "\1\0\1\114\1\0\1\115\6\0\3\114\1\0\2\114"+ - "\3\0\1\114\2\0\4\114\2\0\22\114\31\0\1\116"+ - "\24\0\1\117\22\0\1\120\32\0\1\121\120\0\1\122"+ - "\25\0\1\123\20\0\1\124\12\0\1\124\1\125\1\126"+ - "\1\107\1\110\1\111\1\112\16\0\1\112\1\0\1\107"+ - "\2\0\1\111\4\0\1\126\26\0\1\127\12\0\1\127"+ - "\3\0\1\130\103\0\1\131\35\0\1\132\3\0\1\133"+ - "\13\0\7\23\1\0\14\23\1\134\1\135\53\23\27\0"+ - "\1\136\52\0\2\11\1\0\2\11\6\0\4\11\1\0"+ - "\2\11\3\0\1\11\2\0\1\11\1\137\2\11\2\0"+ - "\1\140\5\11\1\141\13\11\21\0\2\11\1\0\2\11"+ - "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\3\11"+ - "\1\142\2\0\5\11\1\143\1\11\1\144\12\11\21\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\145\2\0\4\11\2\0\22\11\101\0\1\146\20\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\4\11\2\0\3\11\1\147\16\11\21\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\4\11\2\0\4\11\1\150\15\11\21\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\3\11\1\151\2\0\22\11\21\0\2\11"+ - "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\152"+ - "\2\0\4\11\2\0\22\11\21\0\2\11\1\0\2\11"+ - "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ - "\2\0\2\11\1\153\17\11\21\0\2\11\1\0\2\11"+ - "\6\0\4\11\1\0\2\11\3\0\1\154\2\0\4\11"+ - "\2\0\3\11\1\155\5\11\1\156\10\11\21\0\2\11"+ + "\1\63\1\64\1\65\1\66\7\67\1\70\1\71\14\67"+ + "\1\72\1\67\1\73\57\67\1\74\1\71\14\67\1\74"+ + "\1\67\1\75\50\67\2\7\1\76\1\7\1\76\1\7"+ + "\1\77\1\0\5\7\3\76\1\7\2\76\3\7\1\76"+ + "\2\7\1\100\3\76\2\7\21\76\20\7\11\101\1\102"+ + "\24\101\1\103\41\101\1\7\1\10\1\11\1\12\1\11"+ + "\1\7\1\13\1\12\1\14\1\15\1\16\1\17\1\20"+ + "\3\11\1\21\2\11\1\22\1\23\1\7\1\11\1\24"+ + "\1\104\1\26\1\11\1\27\1\30\1\105\1\32\1\11"+ + "\1\33\1\34\1\35\1\11\1\36\1\37\1\40\1\41"+ + "\1\42\2\11\1\43\1\11\1\44\1\45\1\46\1\47"+ + "\1\50\1\51\1\52\1\53\1\54\1\55\1\56\1\57"+ + "\1\60\1\61\1\62\1\63\1\64\1\65\1\66\101\0"+ + "\1\10\12\0\1\10\2\0\1\106\1\107\1\110\1\111"+ + "\16\0\1\111\1\0\1\106\2\0\1\110\32\0\2\11"+ "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ - "\2\0\4\11\2\0\4\11\1\157\4\11\1\160\10\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\14\11\1\161\5\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\6\11\1\162\13\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\1\11\1\163\2\11\2\0\22\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\1\11\1\164\2\11\2\0\22\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\3\11\1\165\16\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\11\11\1\166\10\11"+ - "\101\0\1\167\3\0\1\170\74\0\1\171\1\0\1\172"+ - "\76\0\1\173\100\0\1\174\105\0\1\175\101\0\1\176"+ - "\72\0\1\177\110\0\1\200\105\0\1\201\2\0\7\70"+ - "\2\0\14\70\1\0\1\70\1\0\51\70\2\0\1\202"+ - "\1\0\1\202\1\0\1\203\6\0\3\202\1\0\2\202"+ - "\3\0\1\202\1\0\1\204\4\202\2\0\22\202\20\0"+ - "\7\205\1\0\16\205\1\206\52\205\27\0\1\207\52\0"+ - "\2\77\1\0\2\77\6\0\4\77\1\0\2\77\3\0"+ - "\1\77\2\0\4\77\2\0\22\77\20\0\6\210\2\0"+ - "\71\210\1\0\2\77\1\0\2\77\6\0\4\77\1\0"+ - "\2\77\3\0\1\77\2\0\1\77\1\211\2\77\2\0"+ - "\22\77\56\0\1\212\53\0\1\213\107\0\1\214\61\0"+ - "\1\127\12\0\1\127\3\0\1\215\61\0\1\216\12\0"+ - "\1\216\4\0\1\111\1\0\1\216\22\0\1\111\14\0"+ - "\1\216\15\0\6\113\1\217\1\0\71\113\1\0\2\114"+ - "\1\0\2\114\6\0\4\114\1\0\2\114\3\0\1\114"+ - "\2\0\4\114\2\0\22\114\20\0\6\220\2\0\71\220"+ - "\7\116\1\0\71\116\36\0\1\221\42\0\7\121\1\0"+ - "\71\121\34\0\1\222\7\0\1\223\115\0\1\224\20\0"+ - "\1\124\12\0\1\124\3\0\1\225\1\111\1\112\16\0"+ - "\1\112\4\0\1\111\33\0\2\125\11\0\1\125\1\0"+ - "\1\125\1\107\1\214\2\125\16\0\2\125\1\107\2\0"+ - "\2\125\3\0\1\125\4\0\1\125\21\0\1\126\12\0"+ - "\1\126\2\0\1\107\1\214\22\0\1\107\36\0\1\127"+ - "\12\0\1\127\4\0\1\111\1\112\16\0\1\112\4\0"+ - "\1\111\52\0\1\226\60\0\7\23\1\0\71\23\27\0"+ - "\1\227\52\0\2\11\1\0\2\11\6\0\4\11\1\0"+ - "\2\11\3\0\1\11\2\0\2\11\1\230\1\11\2\0"+ - "\6\11\1\231\13\11\21\0\2\11\1\0\2\11\6\0"+ - "\4\11\1\0\2\11\3\0\1\11\2\0\4\11\2\0"+ - "\1\11\1\232\20\11\21\0\2\11\1\0\2\11\6\0"+ - "\4\11\1\0\2\11\3\0\1\233\2\0\4\11\2\0"+ - "\1\234\21\11\21\0\2\11\1\0\2\11\6\0\4\11"+ - "\1\0\2\11\3\0\1\11\2\0\1\235\3\11\2\0"+ - "\22\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ - "\2\11\3\0\1\11\2\0\4\11\2\0\1\11\1\236"+ - "\20\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ - "\2\11\3\0\1\11\2\0\4\11\2\0\10\11\1\237"+ - "\11\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ - "\2\11\3\0\1\11\2\0\3\11\1\240\2\0\22\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\22\11\1\0\1\241"+ - "\17\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\4\11\1\242\15\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\1\243\3\11\2\0\22\11\21\0"+ + "\2\0\4\11\2\0\21\11\23\0\1\12\3\0\1\12"+ + "\70\0\6\112\2\0\70\112\2\0\1\113\1\0\1\113"+ + "\1\0\1\114\6\0\3\113\1\0\2\113\3\0\1\113"+ + "\2\0\4\113\2\0\21\113\31\0\1\115\24\0\1\116"+ + "\21\0\1\117\32\0\1\120\117\0\1\121\24\0\1\122"+ + "\20\0\1\123\12\0\1\123\1\124\1\125\1\106\1\107"+ + "\1\110\1\111\16\0\1\111\1\0\1\106\2\0\1\110"+ + "\4\0\1\125\25\0\1\126\12\0\1\126\3\0\1\127"+ + "\102\0\1\130\34\0\1\131\3\0\1\132\13\0\7\23"+ + "\1\0\14\23\1\133\1\134\52\23\27\0\1\135\51\0"+ "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\4\11\2\0\5\11\1\244\14\11\21\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\4\11\2\0\4\11\1\245\15\11\21\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\4\11\2\0\6\11\1\246\13\11\21\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\4\11\2\0\3\11\1\247\16\11\21\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\4\11\2\0\5\11\1\250\14\11\21\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\4\11\2\0\15\11\1\251\4\11\21\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\4\11\2\0\2\11\1\252\17\11\21\0"+ - "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ - "\1\11\2\0\2\11\1\253\1\11\2\0\2\11\1\254"+ - "\17\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ - "\2\11\3\0\1\11\2\0\2\11\1\255\1\11\2\0"+ - "\22\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ - "\2\11\3\0\1\11\2\0\4\11\2\0\4\11\1\256"+ - "\1\11\1\257\13\11\101\0\1\260\20\0\2\202\1\0"+ - "\2\202\6\0\4\202\1\0\2\202\3\0\1\202\2\0"+ - "\4\202\2\0\22\202\20\0\6\261\2\0\71\261\1\0"+ - "\2\262\11\0\1\262\1\0\1\262\2\0\2\262\16\0"+ - "\2\262\3\0\2\262\3\0\1\262\4\0\1\262\47\0"+ - "\1\263\51\0\6\210\1\264\1\0\71\210\1\0\2\77"+ - "\1\0\2\77\6\0\4\77\1\0\2\77\3\0\1\77"+ - "\2\0\2\77\1\265\1\77\2\0\22\77\40\0\1\215"+ - "\61\0\1\216\12\0\1\216\4\0\1\111\24\0\1\111"+ - "\32\0\6\220\1\266\1\0\71\220\11\0\1\267\70\0"+ - "\2\270\1\0\2\270\6\0\4\270\1\0\2\270\3\0"+ - "\1\270\2\0\4\270\2\0\22\270\21\0\1\127\12\0"+ - "\1\127\65\0\2\11\1\0\2\11\6\0\4\11\1\0"+ - "\2\11\3\0\1\11\2\0\3\11\1\271\2\0\22\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\11\11\1\272\10\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\2\11\1\273\17\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\2\11\1\274\17\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\2\11\1\275\17\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\2\11\1\276\17\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\12\11\1\277\7\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\2\11\1\300\17\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\11\2\0\4\11\2\0\4\11\1\301\15\11"+ - "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ - "\3\0\1\302\2\0\4\11\2\0\22\11\21\0\2\11"+ - "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ - "\2\0\3\11\1\303\2\0\22\11\21\0\2\11\1\0"+ + "\1\11\2\0\1\11\1\136\2\11\2\0\1\137\5\11"+ + "\1\140\12\11\21\0\2\11\1\0\2\11\6\0\4\11"+ + "\1\0\2\11\3\0\1\11\2\0\3\11\1\141\2\0"+ + "\5\11\1\142\1\11\1\143\11\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\144\2\0"+ + "\4\11\2\0\21\11\100\0\1\145\20\0\2\11\1\0"+ "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\3\11\1\304\2\0\22\11\21\0\2\11\1\0\2\11"+ - "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\1\305"+ - "\3\11\2\0\22\11\21\0\2\11\1\0\2\11\6\0"+ - "\4\11\1\0\2\11\3\0\1\11\2\0\4\11\2\0"+ - "\2\11\1\306\17\11\21\0\2\11\1\0\2\11\6\0"+ - "\4\11\1\0\2\11\3\0\1\11\2\0\4\11\2\0"+ - "\3\11\1\307\16\11\21\0\2\11\1\0\2\11\6\0"+ - "\4\11\1\0\2\11\3\0\1\11\2\0\4\11\2\0"+ - "\4\11\1\310\15\11\21\0\2\11\1\0\2\11\6\0"+ - "\4\11\1\0\2\11\3\0\1\11\2\0\4\11\2\0"+ - "\5\11\1\311\14\11\21\0\2\11\1\0\2\11\6\0"+ - "\4\11\1\0\2\11\3\0\1\11\2\0\3\11\1\312"+ - "\2\0\22\11\20\0\6\261\1\313\1\0\71\261\1\0"+ - "\2\314\11\0\1\314\1\0\1\314\2\0\2\314\16\0"+ - "\2\314\3\0\2\314\3\0\1\314\4\0\1\314\21\0"+ - "\2\77\1\0\2\77\6\0\4\77\1\0\2\77\3\0"+ - "\1\77\2\0\3\77\1\315\2\0\22\77\21\0\2\11"+ - "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ - "\2\0\4\11\2\0\16\11\1\316\3\11\21\0\2\11"+ - "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ - "\2\0\4\11\2\0\3\11\1\317\16\11\21\0\2\11"+ - "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ - "\2\0\4\11\2\0\6\11\1\320\13\11\21\0\2\11"+ - "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ - "\2\0\4\11\2\0\6\11\1\321\13\11\21\0\2\11"+ - "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ - "\2\0\4\11\2\0\3\11\1\322\16\11\21\0\2\11"+ - "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ - "\2\0\4\11\2\0\6\11\1\323\13\11\21\0\2\11"+ - "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ - "\2\0\4\11\2\0\2\11\1\324\17\11\21\0\2\11"+ - "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ - "\2\0\3\11\1\325\2\0\22\11\21\0\2\11\1\0"+ + "\4\11\2\0\3\11\1\146\15\11\21\0\2\11\1\0"+ "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\2\11\1\326\1\11\2\0\22\11\21\0\2\11\1\0"+ + "\4\11\2\0\4\11\1\147\14\11\21\0\2\11\1\0"+ "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\4\11\2\0\10\11\1\327\11\11\21\0\2\11\1\0"+ - "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\4\11\2\0\12\11\1\330\7\11\21\0\2\11\1\0"+ - "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\4\11\2\0\2\11\1\331\17\11\21\0\2\332\11\0"+ - "\1\332\1\0\1\332\2\0\2\332\16\0\2\332\3\0"+ - "\2\332\3\0\1\332\4\0\1\332\21\0\2\11\1\0"+ - "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\4\11\2\0\4\11\1\333\15\11\21\0\2\11\1\0"+ - "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\4\11\2\0\7\11\1\334\12\11\21\0\2\11\1\0"+ - "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\4\11\2\0\13\11\1\335\6\11\21\0\2\11\1\0"+ - "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\4\11\2\0\5\11\1\336\14\11\21\0\2\11\1\0"+ - "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\4\11\2\0\5\11\1\337\14\11\21\0\2\11\1\0"+ - "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ - "\1\340\3\11\2\0\22\11\21\0\2\205\11\0\1\205"+ - "\1\0\1\205\2\0\2\205\16\0\2\205\3\0\2\205"+ - "\3\0\1\205\4\0\1\205\21\0\2\11\1\0\2\11"+ - "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\2\11"+ - "\1\341\1\11\2\0\22\11\21\0\2\11\1\0\2\11"+ - "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ - "\2\0\3\11\1\342\16\11\21\0\2\11\1\0\2\11"+ - "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ - "\2\0\2\11\1\343\17\11\21\0\2\11\1\0\2\11"+ - "\6\0\4\11\1\0\2\11\3\0\1\344\2\0\4\11"+ - "\2\0\22\11\21\0\2\11\1\0\2\11\6\0\4\11"+ - "\1\0\2\11\3\0\1\11\2\0\4\11\2\0\3\11"+ - "\1\345\16\11\21\0\2\11\1\0\2\11\6\0\4\11"+ - "\1\0\2\11\3\0\1\11\2\0\4\11\2\0\10\11"+ - "\1\346\11\11\21\0\2\11\1\0\2\11\6\0\4\11"+ + "\3\11\1\150\2\0\21\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\151\2\0\4\11"+ + "\2\0\21\11\21\0\2\11\1\0\2\11\6\0\4\11"+ "\1\0\2\11\3\0\1\11\2\0\4\11\2\0\2\11"+ - "\1\347\17\11\21\0\2\11\1\0\2\11\6\0\4\11"+ - "\1\0\2\11\3\0\1\11\2\0\3\11\1\350\2\0"+ - "\22\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ - "\2\11\3\0\1\11\2\0\4\11\2\0\2\11\1\351"+ - "\17\11\20\0"; + "\1\152\16\11\21\0\2\11\1\0\2\11\6\0\4\11"+ + "\1\0\2\11\3\0\1\153\2\0\4\11\2\0\3\11"+ + "\1\154\5\11\1\155\7\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ + "\2\0\4\11\1\156\4\11\1\157\7\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\14\11\1\160\4\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\6\11\1\161\12\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\1\11\1\162\2\11\2\0\21\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\3\11\1\163\15\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\11\11\1\164\7\11\100\0\1\165"+ + "\3\0\1\166\73\0\1\167\1\0\1\170\75\0\1\171"+ + "\77\0\1\172\104\0\1\173\100\0\1\174\71\0\1\175"+ + "\107\0\1\176\104\0\1\177\2\0\7\67\2\0\14\67"+ + "\1\0\1\67\1\0\50\67\2\0\1\200\1\0\1\200"+ + "\1\0\1\201\6\0\3\200\1\0\2\200\3\0\1\200"+ + "\1\0\1\202\4\200\2\0\21\200\20\0\7\203\1\0"+ + "\16\203\1\204\51\203\27\0\1\205\51\0\2\76\1\0"+ + "\2\76\6\0\4\76\1\0\2\76\3\0\1\76\2\0"+ + "\4\76\2\0\21\76\20\0\6\206\2\0\70\206\1\0"+ + "\2\76\1\0\2\76\6\0\4\76\1\0\2\76\3\0"+ + "\1\76\2\0\1\76\1\207\2\76\2\0\21\76\56\0"+ + "\1\210\52\0\1\211\106\0\1\212\60\0\1\126\12\0"+ + "\1\126\3\0\1\213\60\0\1\214\12\0\1\214\4\0"+ + "\1\110\1\0\1\214\22\0\1\110\13\0\1\214\15\0"+ + "\6\112\1\215\1\0\70\112\1\0\2\113\1\0\2\113"+ + "\6\0\4\113\1\0\2\113\3\0\1\113\2\0\4\113"+ + "\2\0\21\113\20\0\6\216\2\0\70\216\7\115\1\0"+ + "\70\115\36\0\1\217\41\0\7\120\1\0\70\120\34\0"+ + "\1\220\7\0\1\221\113\0\1\222\20\0\1\123\12\0"+ + "\1\123\3\0\1\223\1\110\1\111\16\0\1\111\4\0"+ + "\1\110\32\0\2\124\11\0\1\124\1\0\1\124\1\106"+ + "\1\212\2\124\16\0\2\124\1\106\2\0\2\124\3\0"+ + "\1\124\3\0\1\124\21\0\1\125\12\0\1\125\2\0"+ + "\1\106\1\212\22\0\1\106\35\0\1\126\12\0\1\126"+ + "\4\0\1\110\1\111\16\0\1\111\4\0\1\110\51\0"+ + "\1\224\57\0\7\23\1\0\70\23\27\0\1\225\51\0"+ + "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ + "\1\11\2\0\2\11\1\226\1\11\2\0\6\11\1\227"+ + "\12\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ + "\2\11\3\0\1\11\2\0\4\11\2\0\1\11\1\230"+ + "\17\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ + "\2\11\3\0\1\231\2\0\4\11\2\0\1\232\20\11"+ + "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ + "\3\0\1\11\2\0\1\233\3\11\2\0\21\11\21\0"+ + "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ + "\1\11\2\0\4\11\2\0\1\11\1\234\17\11\21\0"+ + "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ + "\1\11\2\0\4\11\2\0\10\11\1\235\10\11\21\0"+ + "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ + "\1\11\2\0\3\11\1\236\2\0\21\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\21\11\1\0\1\237\17\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\4\11\1\240\14\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\1\241\3\11\2\0\21\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\5\11\1\242\13\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\4\11\1\243\14\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\6\11\1\244\12\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\3\11\1\245\15\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\5\11\1\246\13\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\15\11\1\247\3\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\2\11\1\250\16\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\2\11\1\251\1\11\2\0\2\11\1\252\16\11\21\0"+ + "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ + "\1\11\2\0\4\11\2\0\4\11\1\253\1\11\1\254"+ + "\12\11\100\0\1\255\20\0\2\200\1\0\2\200\6\0"+ + "\4\200\1\0\2\200\3\0\1\200\2\0\4\200\2\0"+ + "\21\200\20\0\6\256\2\0\70\256\1\0\2\257\11\0"+ + "\1\257\1\0\1\257\2\0\2\257\16\0\2\257\3\0"+ + "\2\257\3\0\1\257\3\0\1\257\47\0\1\260\50\0"+ + "\6\206\1\261\1\0\70\206\1\0\2\76\1\0\2\76"+ + "\6\0\4\76\1\0\2\76\3\0\1\76\2\0\2\76"+ + "\1\262\1\76\2\0\21\76\40\0\1\213\60\0\1\214"+ + "\12\0\1\214\4\0\1\110\24\0\1\110\31\0\6\216"+ + "\1\263\1\0\70\216\11\0\1\264\67\0\2\265\1\0"+ + "\2\265\6\0\4\265\1\0\2\265\3\0\1\265\2\0"+ + "\4\265\2\0\21\265\21\0\1\126\12\0\1\126\64\0"+ + "\2\11\1\0\2\11\6\0\4\11\1\0\2\11\3\0"+ + "\1\11\2\0\3\11\1\266\2\0\21\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\11\11\1\267\7\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\2\11\1\270\16\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\2\11\1\271\16\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\2\11\1\272\16\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\2\11\1\273\16\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\12\11\1\274\6\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\2\11\1\275\16\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\11"+ + "\2\0\4\11\2\0\4\11\1\276\14\11\21\0\2\11"+ + "\1\0\2\11\6\0\4\11\1\0\2\11\3\0\1\277"+ + "\2\0\4\11\2\0\21\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\3\11"+ + "\1\300\2\0\21\11\21\0\2\11\1\0\2\11\6\0"+ + "\4\11\1\0\2\11\3\0\1\11\2\0\3\11\1\301"+ + "\2\0\21\11\21\0\2\11\1\0\2\11\6\0\4\11"+ + "\1\0\2\11\3\0\1\11\2\0\1\302\3\11\2\0"+ + "\21\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ + "\2\11\3\0\1\11\2\0\4\11\2\0\2\11\1\303"+ + "\16\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ + "\2\11\3\0\1\11\2\0\4\11\2\0\3\11\1\304"+ + "\15\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ + "\2\11\3\0\1\11\2\0\4\11\2\0\4\11\1\305"+ + "\14\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ + "\2\11\3\0\1\11\2\0\4\11\2\0\5\11\1\306"+ + "\13\11\20\0\6\256\1\307\1\0\70\256\1\0\2\310"+ + "\11\0\1\310\1\0\1\310\2\0\2\310\16\0\2\310"+ + "\3\0\2\310\3\0\1\310\3\0\1\310\21\0\2\76"+ + "\1\0\2\76\6\0\4\76\1\0\2\76\3\0\1\76"+ + "\2\0\3\76\1\311\2\0\21\76\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\16\11\1\312\2\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\3\11\1\313\15\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\6\11\1\314\12\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\6\11\1\315\12\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\3\11\1\316\15\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\6\11\1\317\12\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\4\11\2\0\2\11\1\320\16\11\21\0\2\11\1\0"+ + "\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+ + "\3\11\1\321\2\0\21\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\2\11"+ + "\1\322\1\11\2\0\21\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ + "\2\0\10\11\1\323\10\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ + "\2\0\12\11\1\324\6\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ + "\2\0\2\11\1\325\16\11\21\0\2\326\11\0\1\326"+ + "\1\0\1\326\2\0\2\326\16\0\2\326\3\0\2\326"+ + "\3\0\1\326\3\0\1\326\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ + "\2\0\4\11\1\327\14\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ + "\2\0\7\11\1\330\11\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ + "\2\0\13\11\1\331\5\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ + "\2\0\5\11\1\332\13\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\4\11"+ + "\2\0\5\11\1\333\13\11\21\0\2\11\1\0\2\11"+ + "\6\0\4\11\1\0\2\11\3\0\1\11\2\0\1\334"+ + "\3\11\2\0\21\11\21\0\2\203\11\0\1\203\1\0"+ + "\1\203\2\0\2\203\16\0\2\203\3\0\2\203\3\0"+ + "\1\203\3\0\1\203\21\0\2\11\1\0\2\11\6\0"+ + "\4\11\1\0\2\11\3\0\1\11\2\0\2\11\1\335"+ + "\1\11\2\0\21\11\21\0\2\11\1\0\2\11\6\0"+ + "\4\11\1\0\2\11\3\0\1\11\2\0\4\11\2\0"+ + "\3\11\1\336\15\11\21\0\2\11\1\0\2\11\6\0"+ + "\4\11\1\0\2\11\3\0\1\11\2\0\4\11\2\0"+ + "\2\11\1\337\16\11\21\0\2\11\1\0\2\11\6\0"+ + "\4\11\1\0\2\11\3\0\1\340\2\0\4\11\2\0"+ + "\21\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ + "\2\11\3\0\1\11\2\0\4\11\2\0\3\11\1\341"+ + "\15\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ + "\2\11\3\0\1\11\2\0\4\11\2\0\10\11\1\342"+ + "\10\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ + "\2\11\3\0\1\11\2\0\4\11\2\0\2\11\1\343"+ + "\16\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+ + "\2\11\3\0\1\11\2\0\3\11\1\344\2\0\21\11"+ + "\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+ + "\3\0\1\11\2\0\4\11\2\0\2\11\1\345\16\11"+ + "\20\0"; private static int [] zzUnpackTrans() { - int [] result = new int[10140]; + int [] result = new int[9792]; int offset = 0; offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result); return result; @@ -529,18 +522,18 @@ class _JetLexer implements FlexLexer { private static final int [] ZZ_ATTRIBUTE = zzUnpackAttribute(); private static final String ZZ_ATTRIBUTE_PACKED_0 = - "\6\0\1\11\15\1\1\11\3\1\1\11\17\1\1\11"+ + "\6\0\1\11\15\1\1\11\3\1\1\11\16\1\1\11"+ "\7\1\4\11\1\1\2\11\1\1\1\11\2\1\2\11"+ "\4\1\1\11\2\1\2\11\1\1\1\0\1\11\1\1"+ "\1\0\1\1\1\0\2\1\1\11\1\1\1\0\1\1"+ - "\1\0\4\1\4\11\1\1\1\0\7\1\1\11\21\1"+ + "\1\0\4\1\4\11\1\1\1\0\7\1\1\11\20\1"+ "\12\11\1\1\1\0\2\11\1\1\2\0\1\1\2\11"+ "\1\0\1\11\1\1\1\11\1\0\3\1\1\11\1\0"+ - "\2\11\11\1\1\11\16\1\1\11\2\0\1\1\1\11"+ - "\1\1\3\11\22\1\1\11\1\0\15\1\1\0\17\1"; + "\2\11\11\1\1\11\15\1\1\11\2\0\1\1\1\11"+ + "\1\1\3\11\21\1\1\11\1\0\15\1\1\0\17\1"; private static int [] zzUnpackAttribute() { - int [] result = new int[233]; + int [] result = new int[229]; int offset = 0; offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); return result; @@ -664,7 +657,7 @@ class _JetLexer implements FlexLexer { char [] map = new char[0x10000]; int i = 0; /* index in packed string */ int j = 0; /* index in unpacked array */ - while (i < 1708) { + while (i < 1704) { int count = packed.charAt(i++); char value = packed.charAt(i++); do map[j++] = value; while (--count > 0); @@ -890,167 +883,167 @@ class _JetLexer implements FlexLexer { case 22: { return KtTokens.LBRACKET ; } - case 105: break; + case 104: break; case 78: { return KtTokens.FUN_KEYWORD ; } - case 106: break; + case 105: break; case 48: { return KtTokens.IN_KEYWORD ; } - case 107: break; + case 106: break; case 58: { return KtTokens.GTEQ ; } - case 108: break; + case 107: break; case 87: { return KtTokens.TRUE_KEYWORD ; } - case 109: break; + case 108: break; case 13: { return KtTokens.RBRACE ; } - case 110: break; + case 109: break; case 10: { return KtTokens.CHARACTER_LITERAL; } - case 111: break; + case 110: break; case 7: { return KtTokens.EXCL ; } - case 112: break; + case 111: break; case 80: { return KtTokens.VAL_KEYWORD ; } - case 113: break; + case 112: break; case 42: { return KtTokens.EXCLEQ ; } - case 114: break; + case 113: break; case 45: { return KtTokens.MINUSEQ ; } - case 115: break; + case 114: break; case 36: { return KtTokens.FLOAT_LITERAL; } - case 116: break; + case 115: break; case 51: { return KtTokens.AS_KEYWORD ; } - case 117: break; + case 116: break; case 90: { return KtTokens.WHEN_KEYWORD ; } - case 118: break; + case 117: break; case 16: { return KtTokens.QUEST ; } - case 119: break; - case 95: + case 118: break; + case 94: { return KtTokens.FALSE_KEYWORD ; } - case 120: break; + case 119: break; case 34: { lBraceCount++; return KtTokens.LBRACE; } - case 121: break; + case 120: break; case 44: { return KtTokens.MINUSMINUS; } - case 122: break; + case 121: break; case 66: { return KtTokens.ESCAPE_SEQUENCE; } - case 123: break; + case 122: break; case 5: { return KtTokens.DIV ; } - case 124: break; + case 123: break; case 79: { return KtTokens.FOR_KEYWORD ; } - case 125: break; + case 124: break; case 30: { popState(); yypushback(1); return KtTokens.DANGLING_NEWLINE; } - case 126: break; + case 125: break; case 52: { return KtTokens.DO_KEYWORD ; } - case 127: break; - case 102: + case 126: break; + case 101: { return KtTokens.CONTINUE_KEYWORD ; } - case 128: break; - case 104: + case 127: break; + case 103: { return KtTokens.INTERFACE_KEYWORD ; } - case 129: break; + case 128: break; case 75: { pushState(RAW_STRING); return KtTokens.OPEN_QUOTE; } - case 130: break; + case 129: break; case 4: { return KtTokens.WHITE_SPACE; } - case 131: break; - case 97: + case 130: break; + case 96: { return KtTokens.BREAK_KEYWORD ; } - case 132: break; + case 131: break; case 85: { yypushback(3); return KtTokens.EXCL; } - case 133: break; + case 132: break; case 60: { return KtTokens.OROR ; } - case 134: break; + case 133: break; case 20: { return KtTokens.PERC ; } - case 135: break; + case 134: break; case 73: { return KtTokens.EXCLEQEQEQ; } - case 136: break; + case 135: break; case 61: { return KtTokens.PERCEQ ; } - case 137: break; + case 136: break; case 43: { return KtTokens.RANGE ; } - case 138: break; + case 137: break; case 54: { return KtTokens.DOUBLE_ARROW; } - case 139: break; + case 138: break; case 38: { return KtTokens.EOL_COMMENT; } - case 140: break; + case 139: break; case 31: { popState(); return KtTokens.CLOSING_QUOTE; } - case 141: break; + case 140: break; case 14: { return KtTokens.MUL ; } - case 142: break; + case 141: break; case 23: { return KtTokens.RBRACKET ; } - case 143: break; + case 142: break; case 56: { return KtTokens.PLUSPLUS ; } - case 144: break; - case 100: + case 143: break; + case 99: { return KtTokens.OBJECT_KEYWORD ; } - case 145: break; + case 144: break; case 68: { if (commentDepth > 0) { commentDepth--; @@ -1062,93 +1055,93 @@ class _JetLexer implements FlexLexer { return commentStateToTokenType(state); } } - case 146: break; + case 145: break; case 8: { return KtTokens.DOT ; } - case 147: break; + case 146: break; case 26: { return KtTokens.SEMICOLON ; } - case 148: break; + case 147: break; case 69: { yypushback(2); return KtTokens.INTEGER_LITERAL; } - case 149: break; + case 148: break; case 32: { popState(); return KtTokens.IDENTIFIER; } - case 150: break; + case 149: break; case 81: { return KtTokens.VAR_KEYWORD ; } - case 151: break; - case 103: + case 150: break; + case 102: { return KtTokens.TYPE_ALIAS_KEYWORD ; } - case 152: break; - case 99: + case 151: break; + case 98: { return KtTokens.RETURN_KEYWORD ; } - case 153: break; + case 152: break; case 37: { return KtTokens.FIELD_IDENTIFIER; } - case 154: break; + case 153: break; case 15: { return KtTokens.EQ ; } - case 155: break; + case 154: break; case 28: { return KtTokens.AT ; } - case 156: break; + case 155: break; case 76: { return KtTokens.TRY_KEYWORD ; } - case 157: break; + case 156: break; case 24: { return KtTokens.LPAR ; } - case 158: break; + case 157: break; case 9: { return KtTokens.MINUS ; } - case 159: break; + case 158: break; case 70: { pushState(DOC_COMMENT); commentDepth = 0; commentStart = getTokenStart(); } - case 160: break; + case 159: break; case 86: { return KtTokens.THIS_KEYWORD ; } - case 161: break; + case 160: break; case 1: { return TokenType.BAD_CHARACTER; } - case 162: break; - case 98: + case 161: break; + case 97: { return KtTokens.WHILE_KEYWORD ; } - case 163: break; + case 162: break; case 40: { return KtTokens.DIVEQ ; } - case 164: break; - case 96: + case 163: break; + case 95: { return KtTokens.CLASS_KEYWORD ; } - case 165: break; + case 164: break; case 53: { return KtTokens.EQEQ ; } - case 166: break; + case 165: break; case 82: { return KtTokens.EQEQEQ ; } - case 167: break; + case 166: break; case 83: { int length = yytext().length(); if (length <= 3) { // closing """ @@ -1160,125 +1153,121 @@ class _JetLexer implements FlexLexer { return KtTokens.REGULAR_STRING_PART; } } - case 168: break; + case 167: break; case 50: { return KtTokens.MULTEQ ; } - case 169: break; + case 168: break; case 65: { pushState(LONG_TEMPLATE_ENTRY); return KtTokens.LONG_TEMPLATE_ENTRY_START; } - case 170: break; + case 169: break; case 12: { return KtTokens.LBRACE ; } - case 171: break; + case 170: break; case 39: { pushState(BLOCK_COMMENT); commentDepth = 0; commentStart = getTokenStart(); } - case 172: break; - case 93: + case 171: break; + case 92: { return KtTokens.THROW_KEYWORD ; } - case 173: break; - case 94: + case 172: break; + case 93: { return KtTokens.SUPER_KEYWORD ; } - case 174: break; + case 173: break; case 62: { return KtTokens.COLONCOLON; } - case 175: break; + case 174: break; case 72: { return KtTokens.NOT_IN; } - case 176: break; + case 175: break; case 63: { return KtTokens.DOUBLE_SEMICOLON; } - case 177: break; + case 176: break; case 6: { return KtTokens.HASH ; } - case 178: break; + case 177: break; case 3: { return KtTokens.IDENTIFIER; } - case 179: break; + case 178: break; case 2: { return KtTokens.INTEGER_LITERAL; } - case 180: break; + case 179: break; case 88: { return KtTokens.ELSE_KEYWORD ; } - case 181: break; + case 180: break; case 11: { pushState(STRING); return KtTokens.OPEN_QUOTE; } - case 182: break; - case 101: + case 181: break; + case 100: { return KtTokens.PACKAGE_KEYWORD ; } - case 183: break; + case 182: break; case 49: { return KtTokens.IF_KEYWORD ; } - case 184: break; + case 183: break; case 18: { return KtTokens.LT ; } - case 185: break; - case 91: - { return KtTokens.CAPITALIZED_THIS_KEYWORD ; - } - case 186: break; + case 184: break; case 17: { return KtTokens.PLUS ; } - case 187: break; + case 185: break; case 55: { return KtTokens.PLUSEQ ; } - case 188: break; + case 186: break; case 74: { return KtTokens.RESERVED ; } - case 189: break; + case 187: break; case 67: { commentDepth++; } - case 190: break; + case 188: break; case 27: { return KtTokens.COMMA ; } - case 191: break; + case 189: break; case 19: { return KtTokens.GT ; } - case 192: break; + case 190: break; case 77: { return KtTokens.AS_SAFE; } - case 193: break; + case 191: break; case 25: { return KtTokens.RPAR ; } - case 194: break; + case 192: break; case 71: { return KtTokens.NOT_IS; } - case 195: break; + case 193: break; case 89: { return KtTokens.NULL_KEYWORD ; } - case 196: break; + case 194: break; case 59: { return KtTokens.ANDAND ; } - case 197: break; + case 195: break; case 35: { if (lBraceCount == 0) { popState(); @@ -1287,11 +1276,11 @@ class _JetLexer implements FlexLexer { lBraceCount--; return KtTokens.RBRACE; } - case 198: break; + case 196: break; case 84: { return KtTokens.BLOCK_COMMENT; } - case 199: break; + case 197: break; case 41: { if (zzCurrentPos == 0) { return KtTokens.SHEBANG_COMMENT; @@ -1301,41 +1290,41 @@ class _JetLexer implements FlexLexer { return KtTokens.HASH; } } - case 200: break; + case 198: break; case 29: { return KtTokens.REGULAR_STRING_PART; } - case 201: break; + case 199: break; case 47: { return KtTokens.IS_KEYWORD ; } - case 202: break; - case 92: + case 200: break; + case 91: { popState(); return KtTokens.THIS_KEYWORD; } - case 203: break; + case 201: break; case 21: { return KtTokens.COLON ; } - case 204: break; + case 202: break; case 57: { return KtTokens.LTEQ ; } - case 205: break; + case 203: break; case 33: { } - case 206: break; + case 204: break; case 64: { pushState(SHORT_TEMPLATE_ENTRY); yypushback(yylength() - 1); return KtTokens.SHORT_TEMPLATE_ENTRY_START; } - case 207: break; + case 205: break; case 46: { return KtTokens.ARROW ; } - case 208: break; + case 206: break; default: if (zzInput == YYEOF && zzStartRead == zzCurrentPos) { zzAtEOF = true; @@ -1347,14 +1336,14 @@ class _JetLexer implements FlexLexer { zzStartRead = commentStart; return commentStateToTokenType(state); } - case 234: break; + case 230: break; case DOC_COMMENT: { int state = yystate(); popState(); zzStartRead = commentStart; return commentStateToTokenType(state); } - case 235: break; + case 231: break; default: return null; } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/parsing/KotlinParsing.java b/compiler/frontend/src/org/jetbrains/kotlin/parsing/KotlinParsing.java index 3e186e07954..5277fad8d2b 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/parsing/KotlinParsing.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/parsing/KotlinParsing.java @@ -56,7 +56,7 @@ public class KotlinParsing extends AbstractKotlinParsing { private static final TokenSet PARAMETER_NAME_RECOVERY_SET = TokenSet.create(COLON, EQ, COMMA, RPAR); private static final TokenSet PACKAGE_NAME_RECOVERY_SET = TokenSet.create(DOT, EOL_OR_SEMICOLON); private static final TokenSet IMPORT_RECOVERY_SET = TokenSet.create(AS_KEYWORD, DOT, EOL_OR_SEMICOLON); - /*package*/ static final TokenSet TYPE_REF_FIRST = TokenSet.create(LBRACKET, IDENTIFIER, LPAR, CAPITALIZED_THIS_KEYWORD, HASH, DYNAMIC_KEYWORD); + /*package*/ static final TokenSet TYPE_REF_FIRST = TokenSet.create(LBRACKET, IDENTIFIER, LPAR, HASH, DYNAMIC_KEYWORD); private static final TokenSet RECEIVER_TYPE_TERMINATORS = TokenSet.create(DOT, SAFE_ACCESS); private static final TokenSet VALUE_PARAMETER_FIRST = TokenSet.orSet(TokenSet.create(IDENTIFIER, LBRACKET, VAL_KEYWORD, VAR_KEYWORD), MODIFIER_KEYWORDS); @@ -1867,9 +1867,6 @@ public class KotlinParsing extends AbstractKotlinParsing { } } - else if (at(CAPITALIZED_THIS_KEYWORD)) { - parseSelfType(); - } else { errorWithRecovery("Type expected", TokenSet.orSet(TOP_LEVEL_DECLARATION_FIRST, @@ -2021,19 +2018,6 @@ public class KotlinParsing extends AbstractKotlinParsing { } } - /* - * selfType - * : "This" - * ; - */ - private void parseSelfType() { - assert _at(CAPITALIZED_THIS_KEYWORD); - - PsiBuilder.Marker type = mark(); - advance(); // CAPITALIZED_THIS_KEYWORD - type.done(SELF_TYPE); - } - /* * (optionalProjection type){","} */ diff --git a/compiler/testData/diagnostics/tests/SelfTypesUnsupported.kt b/compiler/testData/diagnostics/tests/SelfTypesUnsupported.kt deleted file mode 100644 index e137d8399ec..00000000000 --- a/compiler/testData/diagnostics/tests/SelfTypesUnsupported.kt +++ /dev/null @@ -1,8 +0,0 @@ -// !DIAGNOSTICS: -UNUSED_PARAMETER - -fun foo(f: This) {} - -interface CThis>> { - val x: This - val y: This? -} \ No newline at end of file diff --git a/compiler/testData/diagnostics/tests/SelfTypesUnsupported.txt b/compiler/testData/diagnostics/tests/SelfTypesUnsupported.txt deleted file mode 100644 index df49d032ff8..00000000000 --- a/compiler/testData/diagnostics/tests/SelfTypesUnsupported.txt +++ /dev/null @@ -1,11 +0,0 @@ -package - -public fun foo(/*0*/ f: [ERROR : This]): kotlin.Unit - -public interface C> { - public abstract val x: [ERROR : This] - public abstract val y: [ERROR : This]? - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String -} diff --git a/compiler/testData/psi/ThisType.kt b/compiler/testData/psi/ThisType.kt deleted file mode 100644 index 2e6d869a189..00000000000 --- a/compiler/testData/psi/ThisType.kt +++ /dev/null @@ -1,6 +0,0 @@ -class Foo>(a : This, b : bar) : List by foo as List { - fun foo(a : This) : This { - val a : This = Foo(); - } -} - diff --git a/compiler/testData/psi/ThisType.txt b/compiler/testData/psi/ThisType.txt deleted file mode 100644 index 9b771b03330..00000000000 --- a/compiler/testData/psi/ThisType.txt +++ /dev/null @@ -1,155 +0,0 @@ -JetFile: ThisType.kt - PACKAGE_DIRECTIVE - - IMPORT_LIST - - CLASS - PsiElement(class)('class') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('Foo') - TYPE_PARAMETER_LIST - PsiElement(LT)('<') - TYPE_PARAMETER - PsiElement(IDENTIFIER)('T') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('List') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') - PsiElement(GT)('>') - PsiElement(GT)('>') - PRIMARY_CONSTRUCTOR - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - VALUE_PARAMETER - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - VALUE_PARAMETER - PsiElement(IDENTIFIER)('b') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('bar') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') - PsiElement(GT)('>') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - DELEGATION_SPECIFIER_LIST - DELEGATOR_BY - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('List') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') - PsiElement(GT)('>') - PsiWhiteSpace(' ') - PsiElement(by)('by') - PsiWhiteSpace(' ') - BINARY_WITH_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace(' ') - OPERATION_REFERENCE - PsiElement(as)('as') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('List') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') - PsiElement(GT)('>') - PsiWhiteSpace(' ') - CLASS_BODY - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - FUN - PsiElement(fun)('fun') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('foo') - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - VALUE_PARAMETER - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') - PsiWhiteSpace(' ') - BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - PROPERTY - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('Foo') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') - PsiElement(GT)('>') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiElement(SEMICOLON)(';') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n') - PsiElement(RBRACE)('}') diff --git a/compiler/testData/psi/examples/BitArith.txt b/compiler/testData/psi/examples/BitArith.txt index 9e1688256ce..165fa9cee51 100644 --- a/compiler/testData/psi/examples/BitArith.txt +++ b/compiler/testData/psi/examples/BitArith.txt @@ -536,8 +536,9 @@ JetFile: BitArith.kt PsiElement(LT)('<') TYPE_PROJECTION TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') + USER_TYPE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('This') PsiElement(GT)('>') PsiWhiteSpace(' ') CLASS_BODY @@ -576,15 +577,17 @@ JetFile: BitArith.kt PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') + USER_TYPE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('This') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') + USER_TYPE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('This') PsiWhiteSpace('\n\n ') FUN MODIFIER_LIST @@ -615,8 +618,9 @@ JetFile: BitArith.kt PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - SELF_TYPE - PsiElement(This)('This') + USER_TYPE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('This') PsiWhiteSpace('\n ') PsiComment(EOL_COMMENT)('// ...') PsiWhiteSpace('\n') diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java index b3ae0fcb106..07dfcaabfba 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java @@ -577,12 +577,6 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTest { doTest(fileName); } - @TestMetadata("SelfTypesUnsupported.kt") - public void testSelfTypesUnsupported() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/SelfTypesUnsupported.kt"); - doTest(fileName); - } - @TestMetadata("Serializable.kt") public void testSerializable() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/Serializable.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/parsing/ParsingTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/parsing/ParsingTestGenerated.java index 2b4ebf5ff8b..4baead2d7e9 100644 --- a/compiler/tests/org/jetbrains/kotlin/parsing/ParsingTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/parsing/ParsingTestGenerated.java @@ -703,12 +703,6 @@ public class ParsingTestGenerated extends AbstractParsingTest { doParsingTest(fileName); } - @TestMetadata("ThisType.kt") - public void testThisType() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/psi/ThisType.kt"); - doParsingTest(fileName); - } - @TestMetadata("TraitConstructor.kt") public void testTraitConstructor() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/psi/TraitConstructor.kt"); diff --git a/core/descriptors/src/org/jetbrains/kotlin/renderer/KeywordStringsGenerated.java b/core/descriptors/src/org/jetbrains/kotlin/renderer/KeywordStringsGenerated.java index 14f963cc793..dd5c893a369 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/renderer/KeywordStringsGenerated.java +++ b/core/descriptors/src/org/jetbrains/kotlin/renderer/KeywordStringsGenerated.java @@ -51,7 +51,6 @@ public class KeywordStringsGenerated { "while", "do", "when", - "interface", - "This" + "interface" )); } diff --git a/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/KeywordCompletion.kt b/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/KeywordCompletion.kt index 5652b20fd38..f2d756b841d 100644 --- a/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/KeywordCompletion.kt +++ b/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/KeywordCompletion.kt @@ -44,8 +44,7 @@ import org.jetbrains.kotlin.resolve.ModifierCheckerCore open class KeywordLookupObject object KeywordCompletion { - private val NON_ACTUAL_KEYWORDS = setOf(CAPITALIZED_THIS_KEYWORD, - TYPE_ALIAS_KEYWORD) + private val NON_ACTUAL_KEYWORDS = setOf(TYPE_ALIAS_KEYWORD) private val ALL_KEYWORDS = (KEYWORDS.getTypes() + SOFT_KEYWORDS.getTypes()) .filter { it !in NON_ACTUAL_KEYWORDS } .map { it as KtKeywordToken } diff --git a/j2k/testData/fileOrElement/identifier/keywords.java b/j2k/testData/fileOrElement/identifier/keywords.java index bb210e7ddaa..b2c71995cdf 100644 --- a/j2k/testData/fileOrElement/identifier/keywords.java +++ b/j2k/testData/fileOrElement/identifier/keywords.java @@ -1,2 +1,2 @@ //statement -int as, type, val, var, fun, is, in, object, when, This; \ No newline at end of file +int as, type, val, var, fun, is, in, object, when; \ No newline at end of file diff --git a/j2k/testData/fileOrElement/identifier/keywords.kt b/j2k/testData/fileOrElement/identifier/keywords.kt index 144ed11e938..7d924af8a27 100644 --- a/j2k/testData/fileOrElement/identifier/keywords.kt +++ b/j2k/testData/fileOrElement/identifier/keywords.kt @@ -6,5 +6,4 @@ val `fun`: Int val `is`: Int val `in`: Int val `object`: Int -val `when`: Int -val `This`: Int \ No newline at end of file +val `when`: Int \ No newline at end of file diff --git a/j2k/testData/fileOrElement/importStatement/importWithKeywords.java b/j2k/testData/fileOrElement/importStatement/importWithKeywords.java index a0fd7fa6664..b7b0c0ff8cb 100644 --- a/j2k/testData/fileOrElement/importStatement/importWithKeywords.java +++ b/j2k/testData/fileOrElement/importStatement/importWithKeywords.java @@ -1,6 +1,6 @@ //file package test; -import as.type.val.var.fun.is.in.object.when.This; +import as.type.val.var.fun.is.in.object.when; class Test {} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/importStatement/importWithKeywords.kt b/j2k/testData/fileOrElement/importStatement/importWithKeywords.kt index cceda6680c2..2720249e739 100644 --- a/j2k/testData/fileOrElement/importStatement/importWithKeywords.kt +++ b/j2k/testData/fileOrElement/importStatement/importWithKeywords.kt @@ -1,6 +1,6 @@ // ERROR: Unresolved reference: `as` package test -import `as`.type.`val`.`var`.`fun`.`is`.`in`.`object`.`when`.`This` +import `as`.type.`val`.`var`.`fun`.`is`.`in`.`object`.`when` internal class Test \ No newline at end of file