remove support for 'trait' keyword
This commit is contained in:
@@ -149,7 +149,6 @@ public interface Errors {
|
||||
|
||||
DiagnosticFactory0<JetDelegatorToSuperClass> SUPERTYPE_NOT_INITIALIZED = DiagnosticFactory0.create(ERROR);
|
||||
|
||||
DiagnosticFactory0<PsiElement> DEPRECATED_TRAIT_KEYWORD = DiagnosticFactory0.create(WARNING);
|
||||
DiagnosticFactory0<JetTypeReference> DELEGATION_NOT_TO_TRAIT = DiagnosticFactory0.create(ERROR);
|
||||
DiagnosticFactory0<JetTypeReference> SUPERTYPE_NOT_A_CLASS_OR_TRAIT = DiagnosticFactory0.create(ERROR);
|
||||
|
||||
|
||||
-1
@@ -280,7 +280,6 @@ public class DefaultErrorMessages {
|
||||
|
||||
MAP.put(DELEGATION_IN_TRAIT, "Interfaces cannot use delegation");
|
||||
MAP.put(DELEGATION_NOT_TO_TRAIT, "Only interfaces can be delegated to");
|
||||
MAP.put(DEPRECATED_TRAIT_KEYWORD, "'trait' keyword is deprecated, use 'interface' instead");
|
||||
MAP.put(NO_CONSTRUCTOR, "This class does not have a constructor");
|
||||
MAP.put(NOT_A_CLASS, "Not a class");
|
||||
MAP.put(ILLEGAL_ESCAPE_SEQUENCE, "Illegal escape sequence");
|
||||
|
||||
@@ -72,7 +72,6 @@ public interface JetTokens {
|
||||
JetKeywordToken WHILE_KEYWORD = JetKeywordToken.keyword("while");
|
||||
JetKeywordToken DO_KEYWORD = JetKeywordToken.keyword("do");
|
||||
JetKeywordToken WHEN_KEYWORD = JetKeywordToken.keyword("when");
|
||||
JetKeywordToken TRAIT_KEYWORD = JetKeywordToken.keyword("trait");
|
||||
JetKeywordToken INTERFACE_KEYWORD = JetKeywordToken.keyword("interface");
|
||||
// TODO: Discuss "This" keyword
|
||||
JetKeywordToken CAPITALIZED_THIS_KEYWORD = JetKeywordToken.keyword("This");
|
||||
@@ -178,7 +177,7 @@ public interface JetTokens {
|
||||
JetModifierKeywordToken ANNOTATION_KEYWORD = JetModifierKeywordToken.softKeywordModifier("annotation");
|
||||
JetModifierKeywordToken CROSSINLINE_KEYWORD = JetModifierKeywordToken.softKeywordModifier("crossinline");
|
||||
|
||||
TokenSet KEYWORDS = TokenSet.create(PACKAGE_KEYWORD, AS_KEYWORD, TYPE_ALIAS_KEYWORD, CLASS_KEYWORD, TRAIT_KEYWORD, INTERFACE_KEYWORD,
|
||||
TokenSet KEYWORDS = TokenSet.create(PACKAGE_KEYWORD, AS_KEYWORD, TYPE_ALIAS_KEYWORD, CLASS_KEYWORD, INTERFACE_KEYWORD,
|
||||
THIS_KEYWORD, SUPER_KEYWORD, VAL_KEYWORD, VAR_KEYWORD, FUN_KEYWORD, FOR_KEYWORD,
|
||||
NULL_KEYWORD,
|
||||
TRUE_KEYWORD, FALSE_KEYWORD, IS_KEYWORD,
|
||||
|
||||
@@ -249,7 +249,6 @@ LONG_TEMPLATE_ENTRY_START=\$\{
|
||||
"while" { return JetTokens.WHILE_KEYWORD ;}
|
||||
"break" { return JetTokens.BREAK_KEYWORD ;}
|
||||
"class" { return JetTokens.CLASS_KEYWORD ;}
|
||||
"trait" { return JetTokens.TRAIT_KEYWORD ;}
|
||||
"throw" { return JetTokens.THROW_KEYWORD ;}
|
||||
"false" { return JetTokens.FALSE_KEYWORD ;}
|
||||
"super" { return JetTokens.SUPER_KEYWORD ;}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* The following code was generated by JFlex 1.4.3 on 4/29/15 4:44 PM */
|
||||
/* The following code was generated by JFlex 1.4.3 on 9/18/15 3:17 PM */
|
||||
|
||||
package org.jetbrains.kotlin.lexer;
|
||||
|
||||
@@ -14,7 +14,7 @@ import org.jetbrains.kotlin.lexer.JetTokens;
|
||||
/**
|
||||
* This class is a scanner generated by
|
||||
* <a href="http://www.jflex.de/">JFlex</a> 1.4.3
|
||||
* on 4/29/15 4:44 PM from the specification file
|
||||
* on 9/18/15 3:17 PM from the specification file
|
||||
* <tt>/Users/yole/jetbrains/kotlin/compiler/frontend/src/org/jetbrains/kotlin/lexer/Kotlin.flex</tt>
|
||||
*/
|
||||
class _JetLexer implements FlexLexer {
|
||||
@@ -136,17 +136,16 @@ class _JetLexer implements FlexLexer {
|
||||
"\1\70\1\71\1\72\1\73\1\74\1\75\1\76\1\77"+
|
||||
"\1\0\1\100\2\101\2\0\1\40\1\102\1\103\1\0"+
|
||||
"\1\104\1\44\1\3\1\0\1\105\1\106\1\107\1\110"+
|
||||
"\1\0\1\2\2\0\1\111\4\3\1\112\5\3\1\113"+
|
||||
"\1\0\1\2\2\0\1\111\4\3\1\112\4\3\1\113"+
|
||||
"\2\3\1\114\1\3\1\115\7\3\1\116\1\117\1\120"+
|
||||
"\2\0\1\121\2\40\1\45\1\122\1\123\2\44\1\0"+
|
||||
"\1\124\2\3\1\125\4\3\1\126\1\127\7\3\1\130"+
|
||||
"\1\131\1\77\1\0\1\132\1\133\1\3\1\134\1\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";
|
||||
"\1\124\2\3\1\125\3\3\1\126\1\127\7\3\1\130"+
|
||||
"\1\131\1\77\1\0\1\132\1\133\2\3\1\134\2\3"+
|
||||
"\1\135\1\136\2\3\1\137\1\140\1\0\3\3\1\141"+
|
||||
"\1\3\1\142\2\3\1\143\3\3\1\144\1\145\1\146";
|
||||
|
||||
private static int [] zzUnpackAction() {
|
||||
int [] result = new int[240];
|
||||
int [] result = new int[237];
|
||||
int offset = 0;
|
||||
offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
|
||||
return result;
|
||||
@@ -191,19 +190,19 @@ class _JetLexer implements FlexLexer {
|
||||
"\0\u018c\0\u018c\0\u1944\0\u018c\0\u1986\0\u018c\0\u19c8\0\u1a0a"+
|
||||
"\0\u1a4c\0\u1a4c\0\u018c\0\u1a8e\0\u1ad0\0\u1b12\0\u1b54\0\u018c"+
|
||||
"\0\u1b96\0\u1bd8\0\u1c1a\0\u1c5c\0\u0210\0\u1c9e\0\u1ce0\0\u1d22"+
|
||||
"\0\u1d64\0\u1da6\0\u018c\0\u1de8\0\u1e2a\0\u0210\0\u1e6c\0\u0210"+
|
||||
"\0\u1eae\0\u1ef0\0\u1f32\0\u1f74\0\u1fb6\0\u1ff8\0\u203a\0\u0210"+
|
||||
"\0\u0210\0\u018c\0\u207c\0\u20be\0\u187e\0\u018c\0\u2100\0\u018c"+
|
||||
"\0\u018c\0\u018c\0\u2142\0\u2184\0\u2184\0\u0210\0\u21c6\0\u2208"+
|
||||
"\0\u0210\0\u224a\0\u228c\0\u22ce\0\u2310\0\u0210\0\u0210\0\u2352"+
|
||||
"\0\u2394\0\u23d6\0\u2418\0\u245a\0\u249c\0\u24de\0\u0210\0\u0210"+
|
||||
"\0\u018c\0\u2520\0\u0ca2\0\u0210\0\u2562\0\u0210\0\u25a4\0\u0210"+
|
||||
"\0\u25e6\0\u2628\0\u0210\0\u0210\0\u266a\0\u26ac\0\u0210\0\u0210"+
|
||||
"\0\u26ee\0\u2730\0\u2772\0\u27b4\0\u0210\0\u27f6\0\u0210\0\u2838"+
|
||||
"\0\u287a\0\u0210\0\u28bc\0\u28fe\0\u2940\0\u0210\0\u0210\0\u0210";
|
||||
"\0\u1d64\0\u018c\0\u1da6\0\u1de8\0\u0210\0\u1e2a\0\u0210\0\u1e6c"+
|
||||
"\0\u1eae\0\u1ef0\0\u1f32\0\u1f74\0\u1fb6\0\u1ff8\0\u0210\0\u0210"+
|
||||
"\0\u018c\0\u203a\0\u207c\0\u187e\0\u018c\0\u20be\0\u018c\0\u018c"+
|
||||
"\0\u018c\0\u2100\0\u2142\0\u2142\0\u0210\0\u2184\0\u21c6\0\u0210"+
|
||||
"\0\u2208\0\u224a\0\u228c\0\u0210\0\u0210\0\u22ce\0\u2310\0\u2352"+
|
||||
"\0\u2394\0\u23d6\0\u2418\0\u245a\0\u0210\0\u0210\0\u018c\0\u249c"+
|
||||
"\0\u0ca2\0\u0210\0\u24de\0\u2520\0\u0210\0\u2562\0\u25a4\0\u0210"+
|
||||
"\0\u0210\0\u25e6\0\u2628\0\u0210\0\u0210\0\u266a\0\u26ac\0\u26ee"+
|
||||
"\0\u2730\0\u0210\0\u2772\0\u0210\0\u27b4\0\u27f6\0\u0210\0\u2838"+
|
||||
"\0\u287a\0\u28bc\0\u0210\0\u0210\0\u0210";
|
||||
|
||||
private static int [] zzUnpackRowMap() {
|
||||
int [] result = new int[240];
|
||||
int [] result = new int[237];
|
||||
int offset = 0;
|
||||
offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result);
|
||||
return result;
|
||||
@@ -330,181 +329,177 @@ class _JetLexer implements FlexLexer {
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\4\11\2\0\1\11\1\233\20\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\234\2\0\4\11\2\0\1\235\2\11\1\236"+
|
||||
"\16\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\1\237\3\11"+
|
||||
"\2\0\1\234\2\0\4\11\2\0\1\235\21\11\21\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\1\236\3\11\2\0\22\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\1\11"+
|
||||
"\1\237\20\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\0\1\11\2\0\4\11"+
|
||||
"\2\0\10\11\1\240\11\11\21\0\2\11\1\0\2\11"+
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\3\11\1\241\2\0\22\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\4\11\2\0\22\11\1\0\1\242\17\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\4\11\2\0\4\11\1\243"+
|
||||
"\15\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\1\244\3\11"+
|
||||
"\2\0\22\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\0\1\11\2\0\4\11"+
|
||||
"\2\0\1\11\1\240\20\11\21\0\2\11\1\0\2\11"+
|
||||
"\2\0\5\11\1\245\14\11\21\0\2\11\1\0\2\11"+
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\4\11\2\0\10\11\1\241\11\11\21\0\2\11"+
|
||||
"\2\0\4\11\2\0\4\11\1\246\15\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\3\11\1\242\2\0\22\11\21\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\4\11\2\0\22\11\1\0"+
|
||||
"\1\243\17\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\4\11\2\0"+
|
||||
"\4\11\1\244\15\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\1\245\3\11\2\0\22\11\21\0\2\11\1\0\2\11"+
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\4\11\2\0\5\11\1\246\14\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\4\11\1\247\15\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\6\11\1\247\13\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\6\11"+
|
||||
"\1\250\13\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\3\11"+
|
||||
"\1\250\16\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\0\1\11\2\0\4\11"+
|
||||
"\2\0\3\11\1\251\16\11\21\0\2\11\1\0\2\11"+
|
||||
"\2\0\5\11\1\251\14\11\21\0\2\11\1\0\2\11"+
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\4\11\2\0\5\11\1\252\14\11\21\0\2\11"+
|
||||
"\2\0\4\11\2\0\15\11\1\252\4\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\15\11\1\253\4\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\2\11\1\253\17\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\2\11\1\254\1\11"+
|
||||
"\2\0\2\11\1\255\17\11\21\0\2\11\1\0\2\11"+
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\2\11\1\256\1\11\2\0\22\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\4\11\1\257\1\11"+
|
||||
"\1\260\13\11\102\0\1\261\20\0\2\201\1\0\2\201"+
|
||||
"\6\0\4\201\1\0\2\201\1\0\1\201\2\0\1\201"+
|
||||
"\2\0\4\201\2\0\22\201\20\0\6\262\2\0\72\262"+
|
||||
"\1\0\2\263\11\0\1\263\1\0\1\263\2\0\2\263"+
|
||||
"\17\0\2\263\3\0\2\263\3\0\1\263\4\0\1\263"+
|
||||
"\50\0\1\264\51\0\6\207\1\265\1\0\72\207\1\0"+
|
||||
"\2\77\1\0\2\77\6\0\4\77\1\0\2\77\1\0"+
|
||||
"\1\77\2\0\1\77\2\0\2\77\1\266\1\77\2\0"+
|
||||
"\22\77\40\0\1\214\62\0\1\215\12\0\1\215\4\0"+
|
||||
"\1\111\25\0\1\111\32\0\6\217\1\267\1\0\72\217"+
|
||||
"\11\0\1\270\71\0\2\271\1\0\2\271\6\0\4\271"+
|
||||
"\1\0\2\271\1\0\1\271\2\0\1\271\2\0\4\271"+
|
||||
"\2\0\22\271\21\0\1\127\12\0\1\127\105\0\1\213"+
|
||||
"\3\0\1\227\14\0\1\227\41\0\2\272\11\0\1\272"+
|
||||
"\1\0\1\272\1\0\1\214\2\272\17\0\2\272\3\0"+
|
||||
"\2\272\3\0\1\272\4\0\1\272\21\0\1\273\12\0"+
|
||||
"\1\273\6\0\1\274\40\0\1\274\16\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\3\11\1\275\2\0\22\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\11\11\1\276\10\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\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\1\0\1\11\2\0\1\11\2\0\2\11"+
|
||||
"\1\255\1\11\2\0\2\11\1\256\17\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\2\11\1\257\1\11\2\0\22\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\4\11"+
|
||||
"\1\260\1\11\1\261\13\11\102\0\1\262\20\0\2\201"+
|
||||
"\1\0\2\201\6\0\4\201\1\0\2\201\1\0\1\201"+
|
||||
"\2\0\1\201\2\0\4\201\2\0\22\201\20\0\6\263"+
|
||||
"\2\0\72\263\1\0\2\264\11\0\1\264\1\0\1\264"+
|
||||
"\2\0\2\264\17\0\2\264\3\0\2\264\3\0\1\264"+
|
||||
"\4\0\1\264\50\0\1\265\51\0\6\207\1\266\1\0"+
|
||||
"\72\207\1\0\2\77\1\0\2\77\6\0\4\77\1\0"+
|
||||
"\2\77\1\0\1\77\2\0\1\77\2\0\2\77\1\267"+
|
||||
"\1\77\2\0\22\77\40\0\1\214\62\0\1\215\12\0"+
|
||||
"\1\215\4\0\1\111\25\0\1\111\32\0\6\217\1\270"+
|
||||
"\1\0\72\217\11\0\1\271\71\0\2\272\1\0\2\272"+
|
||||
"\6\0\4\272\1\0\2\272\1\0\1\272\2\0\1\272"+
|
||||
"\2\0\4\272\2\0\22\272\21\0\1\127\12\0\1\127"+
|
||||
"\105\0\1\213\3\0\1\227\14\0\1\227\41\0\2\273"+
|
||||
"\11\0\1\273\1\0\1\273\1\0\1\214\2\273\17\0"+
|
||||
"\2\273\3\0\2\273\3\0\1\273\4\0\1\273\21\0"+
|
||||
"\1\274\12\0\1\274\6\0\1\275\40\0\1\275\16\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\3\11\1\276\2\0\22\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\11\11"+
|
||||
"\1\277\10\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\277\17\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\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\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\4\11\2\0\2\11\1\301\17\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\2\11\1\302\1\11\2\0\22\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\2\11\1\302\17\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\2\11"+
|
||||
"\1\303\17\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\12\11"+
|
||||
"\1\303\7\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\0\1\11\2\0\4\11"+
|
||||
"\2\0\2\11\1\304\17\11\21\0\2\11\1\0\2\11"+
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\4\11\2\0\12\11\1\305\7\11\21\0\2\11"+
|
||||
"\2\0\4\11\2\0\4\11\1\305\15\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\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"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\4\11"+
|
||||
"\1\307\15\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\0\1\310\2\0\4\11"+
|
||||
"\2\0\22\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\0\1\11\2\0\3\11"+
|
||||
"\1\311\2\0\22\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\3\11\1\312\2\0\22\11\21\0\2\11\1\0\2\11"+
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\1\313\3\11\2\0\22\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\4\11\2\0\2\11\1\314\17\11\21\0"+
|
||||
"\2\0\1\306\2\0\4\11\2\0\22\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\3\11\1\307\2\0\22\11\21\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\4\11\2\0\3\11\1\315"+
|
||||
"\1\11\2\0\1\11\2\0\3\11\1\310\2\0\22\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\1\311\3\11\2\0"+
|
||||
"\22\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\4\11\2\0"+
|
||||
"\2\11\1\312\17\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\4\11\2\0\3\11\1\313\16\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\4\11\2\0\4\11\1\314\15\11\21\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\4\11\2\0\5\11\1\315"+
|
||||
"\14\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\3\11\1\316"+
|
||||
"\2\0\22\11\20\0\6\262\1\317\1\0\72\262\1\0"+
|
||||
"\2\320\11\0\1\320\1\0\1\320\2\0\2\320\17\0"+
|
||||
"\2\320\3\0\2\320\3\0\1\320\4\0\1\320\21\0"+
|
||||
"\2\77\1\0\2\77\6\0\4\77\1\0\2\77\1\0"+
|
||||
"\1\77\2\0\1\77\2\0\3\77\1\321\2\0\22\77"+
|
||||
"\21\0\2\272\11\0\1\272\1\0\1\272\2\0\2\272"+
|
||||
"\1\0\1\227\14\0\1\227\2\272\3\0\2\272\3\0"+
|
||||
"\1\272\4\0\1\272\21\0\1\273\12\0\1\273\66\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\4\11\2\0\16\11\1\322"+
|
||||
"\3\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\4\11\2\0"+
|
||||
"\3\11\1\323\16\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\4\11\2\0\6\11\1\324\13\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\4\11\2\0\6\11\1\325\13\11\21\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\4\11\2\0\3\11\1\326"+
|
||||
"\16\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\4\11\2\0"+
|
||||
"\4\11\1\316\15\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\6\11\1\327\13\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\4\11\2\0\5\11\1\317\14\11\21\0\2\11\1\0"+
|
||||
"\4\11\2\0\2\11\1\330\17\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\3\11\1\320\2\0\22\11\20\0\6\263"+
|
||||
"\1\321\1\0\72\263\1\0\2\322\11\0\1\322\1\0"+
|
||||
"\1\322\2\0\2\322\17\0\2\322\3\0\2\322\3\0"+
|
||||
"\1\322\4\0\1\322\21\0\2\77\1\0\2\77\6\0"+
|
||||
"\4\77\1\0\2\77\1\0\1\77\2\0\1\77\2\0"+
|
||||
"\3\77\1\323\2\0\22\77\21\0\2\273\11\0\1\273"+
|
||||
"\1\0\1\273\2\0\2\273\1\0\1\227\14\0\1\227"+
|
||||
"\2\273\3\0\2\273\3\0\1\273\4\0\1\273\21\0"+
|
||||
"\1\274\12\0\1\274\66\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\4\11\2\0\16\11\1\324\3\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\4\11\2\0\3\11\1\325\16\11\21\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\1\326\3\11\2\0\22\11"+
|
||||
"\1\11\2\0\3\11\1\331\2\0\22\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\2\11\1\332\1\11\2\0\22\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\6\11"+
|
||||
"\1\327\13\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\10\11"+
|
||||
"\1\333\11\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\0\1\11\2\0\4\11"+
|
||||
"\2\0\6\11\1\330\13\11\21\0\2\11\1\0\2\11"+
|
||||
"\2\0\12\11\1\334\7\11\21\0\2\11\1\0\2\11"+
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\4\11\2\0\3\11\1\331\16\11\21\0\2\11"+
|
||||
"\2\0\4\11\2\0\2\11\1\335\17\11\21\0\2\336"+
|
||||
"\11\0\1\336\1\0\1\336\2\0\2\336\17\0\2\336"+
|
||||
"\3\0\2\336\3\0\1\336\4\0\1\336\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\6\11\1\332\13\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\4\11\1\337\15\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\2\11"+
|
||||
"\1\333\17\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\0\1\11\2\0\3\11"+
|
||||
"\1\334\2\0\22\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\2\11\1\335\1\11\2\0\22\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\4\11\2\0\10\11\1\336\11\11\21\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\4\11\2\0\12\11\1\337"+
|
||||
"\7\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\4\11\2\0"+
|
||||
"\2\11\1\340\17\11\21\0\2\341\11\0\1\341\1\0"+
|
||||
"\1\341\2\0\2\341\17\0\2\341\3\0\2\341\3\0"+
|
||||
"\1\341\4\0\1\341\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\4\11\2\0\4\11\1\342\15\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\4\11\2\0\7\11\1\343\12\11\21\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\4\11\2\0\13\11\1\344"+
|
||||
"\6\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\4\11\2\0"+
|
||||
"\5\11\1\345\14\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\4\11\2\0\5\11\1\346\14\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\1\347\3\11\2\0\22\11\21\0\2\204"+
|
||||
"\11\0\1\204\1\0\1\204\2\0\2\204\17\0\2\204"+
|
||||
"\3\0\2\204\3\0\1\204\4\0\1\204\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\2\11\1\350\1\11\2\0\22\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\3\11"+
|
||||
"\1\351\16\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\7\11"+
|
||||
"\1\340\12\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\0\1\11\2\0\4\11"+
|
||||
"\2\0\2\11\1\352\17\11\21\0\2\11\1\0\2\11"+
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\353"+
|
||||
"\2\0\4\11\2\0\22\11\21\0\2\11\1\0\2\11"+
|
||||
"\2\0\13\11\1\341\6\11\21\0\2\11\1\0\2\11"+
|
||||
"\6\0\4\11\1\0\2\11\1\0\1\11\2\0\1\11"+
|
||||
"\2\0\4\11\2\0\3\11\1\354\16\11\21\0\2\11"+
|
||||
"\2\0\4\11\2\0\5\11\1\342\14\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\10\11\1\355\11\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\5\11\1\343\14\11"+
|
||||
"\21\0\2\11\1\0\2\11\6\0\4\11\1\0\2\11"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\4\11\2\0\2\11"+
|
||||
"\1\356\17\11\21\0\2\11\1\0\2\11\6\0\4\11"+
|
||||
"\1\0\2\11\1\0\1\11\2\0\1\11\2\0\3\11"+
|
||||
"\1\357\2\0\22\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\1\0\1\11\2\0\1\11\2\0\1\344\3\11\2\0"+
|
||||
"\22\11\21\0\2\204\11\0\1\204\1\0\1\204\2\0"+
|
||||
"\2\204\17\0\2\204\3\0\2\204\3\0\1\204\4\0"+
|
||||
"\1\204\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\2\11\1\345"+
|
||||
"\1\11\2\0\22\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\4\11\2\0\2\11\1\360\17\11\20\0";
|
||||
"\4\11\2\0\3\11\1\346\16\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\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\1\0"+
|
||||
"\1\11\2\0\1\350\2\0\4\11\2\0\22\11\21\0"+
|
||||
"\2\11\1\0\2\11\6\0\4\11\1\0\2\11\1\0"+
|
||||
"\1\11\2\0\1\11\2\0\4\11\2\0\3\11\1\351"+
|
||||
"\16\11\21\0\2\11\1\0\2\11\6\0\4\11\1\0"+
|
||||
"\2\11\1\0\1\11\2\0\1\11\2\0\4\11\2\0"+
|
||||
"\10\11\1\352\11\11\21\0\2\11\1\0\2\11\6\0"+
|
||||
"\4\11\1\0\2\11\1\0\1\11\2\0\1\11\2\0"+
|
||||
"\4\11\2\0\2\11\1\353\17\11\21\0\2\11\1\0"+
|
||||
"\2\11\6\0\4\11\1\0\2\11\1\0\1\11\2\0"+
|
||||
"\1\11\2\0\3\11\1\354\2\0\22\11\21\0\2\11"+
|
||||
"\1\0\2\11\6\0\4\11\1\0\2\11\1\0\1\11"+
|
||||
"\2\0\1\11\2\0\4\11\2\0\2\11\1\355\17\11"+
|
||||
"\20\0";
|
||||
|
||||
private static int [] zzUnpackTrans() {
|
||||
int [] result = new int[10626];
|
||||
int [] result = new int[10494];
|
||||
int offset = 0;
|
||||
offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result);
|
||||
return result;
|
||||
@@ -552,12 +547,12 @@ class _JetLexer implements FlexLexer {
|
||||
"\5\11\1\1\1\0\7\1\1\11\21\1\11\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\1\1\2\0"+
|
||||
"\1\11\12\1\1\11\16\1\1\11\2\0\1\1\1\11"+
|
||||
"\1\1\3\11\2\1\1\0\23\1\1\11\1\0\16\1"+
|
||||
"\1\11\11\1\1\11\16\1\1\11\2\0\1\1\1\11"+
|
||||
"\1\1\3\11\2\1\1\0\22\1\1\11\1\0\15\1"+
|
||||
"\1\0\17\1";
|
||||
|
||||
private static int [] zzUnpackAttribute() {
|
||||
int [] result = new int[240];
|
||||
int [] result = new int[237];
|
||||
int offset = 0;
|
||||
offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result);
|
||||
return result;
|
||||
@@ -904,34 +899,34 @@ class _JetLexer implements FlexLexer {
|
||||
zzMarkedPos = zzMarkedPosL;
|
||||
|
||||
switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
|
||||
case 102:
|
||||
case 101:
|
||||
{ return JetTokens.TYPE_ALIAS_KEYWORD ;
|
||||
}
|
||||
case 104: break;
|
||||
case 103: break;
|
||||
case 3:
|
||||
{ return JetTokens.IDENTIFIER;
|
||||
}
|
||||
case 105: break;
|
||||
case 104: break;
|
||||
case 11:
|
||||
{ pushState(STRING); return JetTokens.OPEN_QUOTE;
|
||||
}
|
||||
case 106: break;
|
||||
case 105: break;
|
||||
case 77:
|
||||
{ return JetTokens.FOR_KEYWORD ;
|
||||
}
|
||||
case 107: break;
|
||||
case 98:
|
||||
case 106: break;
|
||||
case 97:
|
||||
{ return JetTokens.RETURN_KEYWORD ;
|
||||
}
|
||||
case 108: break;
|
||||
case 103:
|
||||
case 107: break;
|
||||
case 102:
|
||||
{ return JetTokens.INTERFACE_KEYWORD ;
|
||||
}
|
||||
case 109: break;
|
||||
case 108: break;
|
||||
case 87:
|
||||
{ return JetTokens.NULL_KEYWORD ;
|
||||
}
|
||||
case 110: break;
|
||||
case 109: break;
|
||||
case 35:
|
||||
{ if (lBraceCount == 0) {
|
||||
popState();
|
||||
@@ -940,155 +935,155 @@ class _JetLexer implements FlexLexer {
|
||||
lBraceCount--;
|
||||
return JetTokens.RBRACE;
|
||||
}
|
||||
case 111: break;
|
||||
case 110: break;
|
||||
case 18:
|
||||
{ return JetTokens.LT ;
|
||||
}
|
||||
case 112: break;
|
||||
case 111: break;
|
||||
case 52:
|
||||
{ return JetTokens.DO_KEYWORD ;
|
||||
}
|
||||
case 113: break;
|
||||
case 112: break;
|
||||
case 17:
|
||||
{ return JetTokens.PLUS ;
|
||||
}
|
||||
case 114: break;
|
||||
case 113: break;
|
||||
case 55:
|
||||
{ return JetTokens.PLUSEQ ;
|
||||
}
|
||||
case 115: break;
|
||||
case 114: break;
|
||||
case 90:
|
||||
{ popState(); return JetTokens.THIS_KEYWORD;
|
||||
}
|
||||
case 116: break;
|
||||
case 115: break;
|
||||
case 27:
|
||||
{ return JetTokens.COMMA ;
|
||||
}
|
||||
case 117: break;
|
||||
case 116: break;
|
||||
case 19:
|
||||
{ return JetTokens.GT ;
|
||||
}
|
||||
case 118: break;
|
||||
case 117: break;
|
||||
case 4:
|
||||
{ return JetTokens.WHITE_SPACE;
|
||||
}
|
||||
case 119: break;
|
||||
case 118: break;
|
||||
case 25:
|
||||
{ return JetTokens.RPAR ;
|
||||
}
|
||||
case 120: break;
|
||||
case 119: break;
|
||||
case 54:
|
||||
{ return JetTokens.DOUBLE_ARROW;
|
||||
}
|
||||
case 121: break;
|
||||
case 120: break;
|
||||
case 85:
|
||||
{ return JetTokens.TRUE_KEYWORD ;
|
||||
}
|
||||
case 122: break;
|
||||
case 121: break;
|
||||
case 37:
|
||||
{ return JetTokens.FIELD_IDENTIFIER;
|
||||
}
|
||||
case 123: break;
|
||||
case 122: break;
|
||||
case 59:
|
||||
{ return JetTokens.ANDAND ;
|
||||
}
|
||||
case 124: break;
|
||||
case 123: break;
|
||||
case 64:
|
||||
{ pushState(LONG_TEMPLATE_ENTRY); return JetTokens.LONG_TEMPLATE_ENTRY_START;
|
||||
}
|
||||
case 125: break;
|
||||
case 124: break;
|
||||
case 36:
|
||||
{ return JetTokens.FLOAT_LITERAL;
|
||||
}
|
||||
case 126: break;
|
||||
case 125: break;
|
||||
case 38:
|
||||
{ return JetTokens.EOL_COMMENT;
|
||||
}
|
||||
case 127: break;
|
||||
case 126: break;
|
||||
case 88:
|
||||
{ return JetTokens.WHEN_KEYWORD ;
|
||||
}
|
||||
case 128: break;
|
||||
case 127: break;
|
||||
case 73:
|
||||
{ pushState(RAW_STRING); return JetTokens.OPEN_QUOTE;
|
||||
}
|
||||
case 129: break;
|
||||
case 128: break;
|
||||
case 21:
|
||||
{ return JetTokens.COLON ;
|
||||
}
|
||||
case 130: break;
|
||||
case 129: break;
|
||||
case 57:
|
||||
{ return JetTokens.LTEQ ;
|
||||
}
|
||||
case 131: break;
|
||||
case 130: break;
|
||||
case 46:
|
||||
{ return JetTokens.ARROW ;
|
||||
}
|
||||
case 132: break;
|
||||
case 131: break;
|
||||
case 32:
|
||||
{ popState(); return JetTokens.IDENTIFIER;
|
||||
}
|
||||
case 133: break;
|
||||
case 132: break;
|
||||
case 22:
|
||||
{ return JetTokens.LBRACKET ;
|
||||
}
|
||||
case 134: break;
|
||||
case 133: break;
|
||||
case 68:
|
||||
{ yypushback(2); return JetTokens.INTEGER_LITERAL;
|
||||
}
|
||||
case 135: break;
|
||||
case 134: break;
|
||||
case 10:
|
||||
{ return JetTokens.CHARACTER_LITERAL;
|
||||
}
|
||||
case 136: break;
|
||||
case 135: break;
|
||||
case 79:
|
||||
{ return JetTokens.VAR_KEYWORD ;
|
||||
}
|
||||
case 137: break;
|
||||
case 136: break;
|
||||
case 58:
|
||||
{ return JetTokens.GTEQ ;
|
||||
}
|
||||
case 138: break;
|
||||
case 137: break;
|
||||
case 2:
|
||||
{ return JetTokens.INTEGER_LITERAL;
|
||||
}
|
||||
case 139: break;
|
||||
case 138: break;
|
||||
case 13:
|
||||
{ return JetTokens.RBRACE ;
|
||||
}
|
||||
case 140: break;
|
||||
case 95:
|
||||
case 139: break;
|
||||
case 94:
|
||||
{ return JetTokens.CLASS_KEYWORD ;
|
||||
}
|
||||
case 141: break;
|
||||
case 140: break;
|
||||
case 74:
|
||||
{ return JetTokens.TRY_KEYWORD ;
|
||||
}
|
||||
case 142: break;
|
||||
case 141: break;
|
||||
case 7:
|
||||
{ return JetTokens.EXCL ;
|
||||
}
|
||||
case 143: break;
|
||||
case 142: break;
|
||||
case 42:
|
||||
{ return JetTokens.EXCLEQ ;
|
||||
}
|
||||
case 144: break;
|
||||
case 143: break;
|
||||
case 45:
|
||||
{ return JetTokens.MINUSEQ ;
|
||||
}
|
||||
case 145: break;
|
||||
case 100:
|
||||
case 144: break;
|
||||
case 99:
|
||||
{ return JetTokens.PACKAGE_KEYWORD ;
|
||||
}
|
||||
case 146: break;
|
||||
case 145: break;
|
||||
case 91:
|
||||
{ return JetTokens.THROW_KEYWORD ;
|
||||
}
|
||||
case 147: break;
|
||||
case 93:
|
||||
case 146: break;
|
||||
case 92:
|
||||
{ return JetTokens.SUPER_KEYWORD ;
|
||||
}
|
||||
case 148: break;
|
||||
case 147: break;
|
||||
case 67:
|
||||
{ if (commentDepth > 0) {
|
||||
commentDepth--;
|
||||
@@ -1100,27 +1095,27 @@ class _JetLexer implements FlexLexer {
|
||||
return commentStateToTokenType(state);
|
||||
}
|
||||
}
|
||||
case 149: break;
|
||||
case 97:
|
||||
case 148: break;
|
||||
case 96:
|
||||
{ return JetTokens.WHILE_KEYWORD ;
|
||||
}
|
||||
case 150: break;
|
||||
case 149: break;
|
||||
case 44:
|
||||
{ return JetTokens.MINUSMINUS;
|
||||
}
|
||||
case 151: break;
|
||||
case 101:
|
||||
case 150: break;
|
||||
case 100:
|
||||
{ return JetTokens.CONTINUE_KEYWORD ;
|
||||
}
|
||||
case 152: break;
|
||||
case 151: break;
|
||||
case 71:
|
||||
{ return JetTokens.NOT_IN;
|
||||
}
|
||||
case 153: break;
|
||||
case 152: break;
|
||||
case 5:
|
||||
{ return JetTokens.DIV ;
|
||||
}
|
||||
case 154: break;
|
||||
case 153: break;
|
||||
case 81:
|
||||
{ int length = yytext().length();
|
||||
if (length <= 3) { // closing """
|
||||
@@ -1132,181 +1127,181 @@ class _JetLexer implements FlexLexer {
|
||||
return JetTokens.REGULAR_STRING_PART;
|
||||
}
|
||||
}
|
||||
case 155: break;
|
||||
case 154: break;
|
||||
case 29:
|
||||
{ return JetTokens.REGULAR_STRING_PART;
|
||||
}
|
||||
case 156: break;
|
||||
case 155: break;
|
||||
case 16:
|
||||
{ return JetTokens.QUEST ;
|
||||
}
|
||||
case 157: break;
|
||||
case 156: break;
|
||||
case 69:
|
||||
{ pushState(DOC_COMMENT);
|
||||
commentDepth = 0;
|
||||
commentStart = getTokenStart();
|
||||
}
|
||||
case 158: break;
|
||||
case 157: break;
|
||||
case 60:
|
||||
{ return JetTokens.OROR ;
|
||||
}
|
||||
case 159: break;
|
||||
case 158: break;
|
||||
case 20:
|
||||
{ return JetTokens.PERC ;
|
||||
}
|
||||
case 160: break;
|
||||
case 159: break;
|
||||
case 72:
|
||||
{ return JetTokens.EXCLEQEQEQ;
|
||||
}
|
||||
case 161: break;
|
||||
case 160: break;
|
||||
case 61:
|
||||
{ return JetTokens.PERCEQ ;
|
||||
}
|
||||
case 162: break;
|
||||
case 161: break;
|
||||
case 43:
|
||||
{ return JetTokens.RANGE ;
|
||||
}
|
||||
case 163: break;
|
||||
case 162: break;
|
||||
case 1:
|
||||
{ return TokenType.BAD_CHARACTER;
|
||||
}
|
||||
case 164: break;
|
||||
case 163: break;
|
||||
case 63:
|
||||
{ pushState(SHORT_TEMPLATE_ENTRY);
|
||||
yypushback(yylength() - 1);
|
||||
return JetTokens.SHORT_TEMPLATE_ENTRY_START;
|
||||
}
|
||||
case 165: break;
|
||||
case 164: break;
|
||||
case 70:
|
||||
{ return JetTokens.NOT_IS;
|
||||
}
|
||||
case 166: break;
|
||||
case 165: break;
|
||||
case 14:
|
||||
{ return JetTokens.MUL ;
|
||||
}
|
||||
case 167: break;
|
||||
case 166: break;
|
||||
case 23:
|
||||
{ return JetTokens.RBRACKET ;
|
||||
}
|
||||
case 168: break;
|
||||
case 167: break;
|
||||
case 56:
|
||||
{ return JetTokens.PLUSPLUS ;
|
||||
}
|
||||
case 169: break;
|
||||
case 168: break;
|
||||
case 39:
|
||||
{ pushState(BLOCK_COMMENT);
|
||||
commentDepth = 0;
|
||||
commentStart = getTokenStart();
|
||||
}
|
||||
case 170: break;
|
||||
case 169: break;
|
||||
case 84:
|
||||
{ return JetTokens.THIS_KEYWORD ;
|
||||
}
|
||||
case 171: break;
|
||||
case 170: break;
|
||||
case 8:
|
||||
{ return JetTokens.DOT ;
|
||||
}
|
||||
case 172: break;
|
||||
case 171: break;
|
||||
case 26:
|
||||
{ return JetTokens.SEMICOLON ;
|
||||
}
|
||||
case 173: break;
|
||||
case 172: break;
|
||||
case 49:
|
||||
{ return JetTokens.IF_KEYWORD ;
|
||||
}
|
||||
case 174: break;
|
||||
case 173: break;
|
||||
case 65:
|
||||
{ return JetTokens.ESCAPE_SEQUENCE;
|
||||
}
|
||||
case 175: break;
|
||||
case 174: break;
|
||||
case 31:
|
||||
{ popState(); return JetTokens.CLOSING_QUOTE;
|
||||
}
|
||||
case 176: break;
|
||||
case 175: break;
|
||||
case 15:
|
||||
{ return JetTokens.EQ ;
|
||||
}
|
||||
case 177: break;
|
||||
case 176: break;
|
||||
case 28:
|
||||
{ return JetTokens.AT ;
|
||||
}
|
||||
case 178: break;
|
||||
case 177: break;
|
||||
case 75:
|
||||
{ return JetTokens.AS_SAFE;
|
||||
}
|
||||
case 179: break;
|
||||
case 178: break;
|
||||
case 24:
|
||||
{ return JetTokens.LPAR ;
|
||||
}
|
||||
case 180: break;
|
||||
case 179: break;
|
||||
case 9:
|
||||
{ return JetTokens.MINUS ;
|
||||
}
|
||||
case 181: break;
|
||||
case 94:
|
||||
case 180: break;
|
||||
case 93:
|
||||
{ return JetTokens.FALSE_KEYWORD ;
|
||||
}
|
||||
case 182: break;
|
||||
case 181: break;
|
||||
case 66:
|
||||
{ commentDepth++;
|
||||
}
|
||||
case 183: break;
|
||||
case 182: break;
|
||||
case 76:
|
||||
{ return JetTokens.FUN_KEYWORD ;
|
||||
}
|
||||
case 184: break;
|
||||
case 183: break;
|
||||
case 47:
|
||||
{ return JetTokens.IS_KEYWORD ;
|
||||
}
|
||||
case 185: break;
|
||||
case 184: break;
|
||||
case 30:
|
||||
{ popState(); yypushback(1); return JetTokens.DANGLING_NEWLINE;
|
||||
}
|
||||
case 186: break;
|
||||
case 185: break;
|
||||
case 34:
|
||||
{ lBraceCount++; return JetTokens.LBRACE;
|
||||
}
|
||||
case 187: break;
|
||||
case 186: break;
|
||||
case 83:
|
||||
{ yypushback(3); return JetTokens.EXCL;
|
||||
}
|
||||
case 188: break;
|
||||
case 187: break;
|
||||
case 40:
|
||||
{ return JetTokens.DIVEQ ;
|
||||
}
|
||||
case 189: break;
|
||||
case 188: break;
|
||||
case 86:
|
||||
{ return JetTokens.ELSE_KEYWORD ;
|
||||
}
|
||||
case 190: break;
|
||||
case 189: break;
|
||||
case 51:
|
||||
{ return JetTokens.AS_KEYWORD ;
|
||||
}
|
||||
case 191: break;
|
||||
case 190: break;
|
||||
case 48:
|
||||
{ return JetTokens.IN_KEYWORD ;
|
||||
}
|
||||
case 192: break;
|
||||
case 191: break;
|
||||
case 53:
|
||||
{ return JetTokens.EQEQ ;
|
||||
}
|
||||
case 193: break;
|
||||
case 192: break;
|
||||
case 80:
|
||||
{ return JetTokens.EQEQEQ ;
|
||||
}
|
||||
case 194: break;
|
||||
case 193: break;
|
||||
case 78:
|
||||
{ return JetTokens.VAL_KEYWORD ;
|
||||
}
|
||||
case 195: break;
|
||||
case 194: break;
|
||||
case 89:
|
||||
{ return JetTokens.CAPITALIZED_THIS_KEYWORD ;
|
||||
}
|
||||
case 196: break;
|
||||
case 195: break;
|
||||
case 50:
|
||||
{ return JetTokens.MULTEQ ;
|
||||
}
|
||||
case 197: break;
|
||||
case 196: break;
|
||||
case 41:
|
||||
{ if (zzCurrentPos == 0) {
|
||||
return JetTokens.SHEBANG_COMMENT;
|
||||
@@ -1316,39 +1311,35 @@ class _JetLexer implements FlexLexer {
|
||||
return JetTokens.HASH;
|
||||
}
|
||||
}
|
||||
case 198: break;
|
||||
case 197: break;
|
||||
case 12:
|
||||
{ return JetTokens.LBRACE ;
|
||||
}
|
||||
case 199: break;
|
||||
case 99:
|
||||
case 198: break;
|
||||
case 98:
|
||||
{ return JetTokens.OBJECT_KEYWORD ;
|
||||
}
|
||||
case 200: break;
|
||||
case 96:
|
||||
case 199: break;
|
||||
case 95:
|
||||
{ return JetTokens.BREAK_KEYWORD ;
|
||||
}
|
||||
case 201: break;
|
||||
case 200: break;
|
||||
case 82:
|
||||
{ return JetTokens.BLOCK_COMMENT;
|
||||
}
|
||||
case 202: break;
|
||||
case 92:
|
||||
{ return JetTokens.TRAIT_KEYWORD ;
|
||||
}
|
||||
case 203: break;
|
||||
case 201: break;
|
||||
case 62:
|
||||
{ return JetTokens.COLONCOLON;
|
||||
}
|
||||
case 204: break;
|
||||
case 202: break;
|
||||
case 33:
|
||||
{
|
||||
}
|
||||
case 205: break;
|
||||
case 203: break;
|
||||
case 6:
|
||||
{ return JetTokens.HASH ;
|
||||
}
|
||||
case 206: break;
|
||||
case 204: break;
|
||||
default:
|
||||
if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
|
||||
zzAtEOF = true;
|
||||
@@ -1360,14 +1351,14 @@ class _JetLexer implements FlexLexer {
|
||||
zzStartRead = commentStart;
|
||||
return commentStateToTokenType(state);
|
||||
}
|
||||
case 241: break;
|
||||
case 238: break;
|
||||
case DOC_COMMENT: {
|
||||
int state = yystate();
|
||||
popState();
|
||||
zzStartRead = commentStart;
|
||||
return commentStateToTokenType(state);
|
||||
}
|
||||
case 242: break;
|
||||
case 239: break;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ public class JetExpressionParsing extends AbstractJetParsing {
|
||||
|
||||
private static final TokenSet TYPE_ARGUMENT_LIST_STOPPERS = TokenSet.create(
|
||||
INTEGER_LITERAL, FLOAT_LITERAL, CHARACTER_LITERAL, OPEN_QUOTE,
|
||||
PACKAGE_KEYWORD, AS_KEYWORD, TYPE_ALIAS_KEYWORD, TRAIT_KEYWORD, INTERFACE_KEYWORD, CLASS_KEYWORD, THIS_KEYWORD, VAL_KEYWORD, VAR_KEYWORD,
|
||||
PACKAGE_KEYWORD, AS_KEYWORD, TYPE_ALIAS_KEYWORD, INTERFACE_KEYWORD, CLASS_KEYWORD, THIS_KEYWORD, VAL_KEYWORD, VAR_KEYWORD,
|
||||
FUN_KEYWORD, FOR_KEYWORD, NULL_KEYWORD,
|
||||
TRUE_KEYWORD, FALSE_KEYWORD, IS_KEYWORD, THROW_KEYWORD, RETURN_KEYWORD, BREAK_KEYWORD,
|
||||
CONTINUE_KEYWORD, OBJECT_KEYWORD, IF_KEYWORD, TRY_KEYWORD, ELSE_KEYWORD, WHILE_KEYWORD, DO_KEYWORD,
|
||||
@@ -119,7 +119,6 @@ public class JetExpressionParsing extends AbstractJetParsing {
|
||||
// declaration
|
||||
FUN_KEYWORD,
|
||||
VAL_KEYWORD, VAR_KEYWORD,
|
||||
TRAIT_KEYWORD,
|
||||
INTERFACE_KEYWORD,
|
||||
CLASS_KEYWORD,
|
||||
TYPE_ALIAS_KEYWORD
|
||||
@@ -1367,7 +1366,7 @@ public class JetExpressionParsing extends AbstractJetParsing {
|
||||
private IElementType parseLocalDeclarationRest(boolean isEnum) {
|
||||
IElementType keywordToken = tt();
|
||||
IElementType declType = null;
|
||||
if (keywordToken == CLASS_KEYWORD || keywordToken == TRAIT_KEYWORD || keywordToken == INTERFACE_KEYWORD) {
|
||||
if (keywordToken == CLASS_KEYWORD || keywordToken == INTERFACE_KEYWORD) {
|
||||
declType = myJetParsing.parseClass(isEnum, LOCAL);
|
||||
}
|
||||
else if (keywordToken == FUN_KEYWORD) {
|
||||
|
||||
@@ -46,7 +46,7 @@ public class JetParsing extends AbstractJetParsing {
|
||||
}
|
||||
|
||||
private static final TokenSet TOP_LEVEL_DECLARATION_FIRST = TokenSet.create(
|
||||
TYPE_ALIAS_KEYWORD, TRAIT_KEYWORD, INTERFACE_KEYWORD, CLASS_KEYWORD, OBJECT_KEYWORD,
|
||||
TYPE_ALIAS_KEYWORD, INTERFACE_KEYWORD, CLASS_KEYWORD, OBJECT_KEYWORD,
|
||||
FUN_KEYWORD, VAL_KEYWORD, PACKAGE_KEYWORD);
|
||||
private static final TokenSet DECLARATION_FIRST = TokenSet.orSet(TOP_LEVEL_DECLARATION_FIRST,
|
||||
TokenSet.create(INIT_KEYWORD, GET_KEYWORD, SET_KEYWORD, CONSTRUCTOR_KEYWORD));
|
||||
@@ -399,7 +399,7 @@ public class JetParsing extends AbstractJetParsing {
|
||||
// declType = parsePackageBlock();
|
||||
// }
|
||||
// else
|
||||
if (keywordToken == CLASS_KEYWORD || keywordToken == TRAIT_KEYWORD || keywordToken == INTERFACE_KEYWORD) {
|
||||
if (keywordToken == CLASS_KEYWORD || keywordToken == INTERFACE_KEYWORD) {
|
||||
declType = parseClass(detector.isEnumDetected(), TOP_LEVEL);
|
||||
}
|
||||
else if (keywordToken == FUN_KEYWORD) {
|
||||
@@ -774,9 +774,9 @@ public class JetParsing extends AbstractJetParsing {
|
||||
assert _at(OBJECT_KEYWORD);
|
||||
}
|
||||
else {
|
||||
assert _atSet(CLASS_KEYWORD, TRAIT_KEYWORD, INTERFACE_KEYWORD);
|
||||
assert _atSet(CLASS_KEYWORD, INTERFACE_KEYWORD);
|
||||
}
|
||||
advance(); // CLASS_KEYWORD, TRAIT_KEYWORD or OBJECT_KEYWORD
|
||||
advance(); // CLASS_KEYWORD, INTERFACE_KEYWORD or OBJECT_KEYWORD
|
||||
|
||||
if (nameParsingMode == NameParsingMode.REQUIRED) {
|
||||
OptionalMarker marker = new OptionalMarker(object);
|
||||
@@ -1068,7 +1068,7 @@ public class JetParsing extends AbstractJetParsing {
|
||||
private IElementType parseMemberDeclarationRest(boolean isEnum, boolean isDefault) {
|
||||
IElementType keywordToken = tt();
|
||||
IElementType declType = null;
|
||||
if (keywordToken == CLASS_KEYWORD || keywordToken == TRAIT_KEYWORD || keywordToken == INTERFACE_KEYWORD) {
|
||||
if (keywordToken == CLASS_KEYWORD || keywordToken == INTERFACE_KEYWORD) {
|
||||
declType = parseClass(isEnum, CLASS_MEMBER);
|
||||
}
|
||||
else if (keywordToken == FUN_KEYWORD) {
|
||||
|
||||
@@ -41,8 +41,7 @@ public open class JetClass : JetClassOrObject {
|
||||
public fun getProperties(): List<JetProperty> = getBody()?.getProperties().orEmpty()
|
||||
|
||||
public fun isInterface(): Boolean =
|
||||
getStub()?.isInterface()
|
||||
?: (findChildByType<PsiElement>(JetTokens.TRAIT_KEYWORD) != null || findChildByType<PsiElement>(JetTokens.INTERFACE_KEYWORD) != null)
|
||||
getStub()?.isInterface() ?: (findChildByType<PsiElement>(JetTokens.INTERFACE_KEYWORD) != null)
|
||||
|
||||
public fun isEnum(): Boolean = hasModifier(JetTokens.ENUM_KEYWORD)
|
||||
public fun isSealed(): Boolean = hasModifier(JetTokens.SEALED_KEYWORD)
|
||||
|
||||
@@ -18,7 +18,6 @@ package org.jetbrains.kotlin.resolve;
|
||||
|
||||
import com.google.common.collect.Multimap;
|
||||
import com.google.common.collect.Sets;
|
||||
import com.intellij.lang.ASTNode;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -233,11 +232,6 @@ public class DeclarationsChecker {
|
||||
checkTypeParameters(aClass);
|
||||
|
||||
if (aClass.isInterface()) {
|
||||
ASTNode traitKeyword = aClass.getNode().findChildByType(JetTokens.TRAIT_KEYWORD);
|
||||
if (traitKeyword != null) {
|
||||
trace.report(Errors.DEPRECATED_TRAIT_KEYWORD.on(traitKeyword.getPsi()));
|
||||
}
|
||||
|
||||
checkConstructorInTrait(aClass);
|
||||
}
|
||||
else if (classDescriptor.getKind() == ClassKind.ANNOTATION_CLASS) {
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
trait Id<T> {
|
||||
interface Id<T> {
|
||||
val id: T
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
trait A {
|
||||
interface A {
|
||||
fun visit(a:String, b:String="") : String = b + a
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
trait Base
|
||||
interface Base
|
||||
class Derived: Base
|
||||
class Another: Base
|
||||
fun Base.inc(): Derived { return Derived() }
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
trait Base
|
||||
interface Base
|
||||
class Derived: Base
|
||||
class Another: Base
|
||||
fun Base.inc(): Derived { return Derived() }
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
// KT-3407 Implementing (in Java) an abstract Kotlin class that implements a trait does not respect trait method definition
|
||||
|
||||
trait T {
|
||||
interface T {
|
||||
fun foo() = "OK"
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
trait KTrait : Simple {
|
||||
interface KTrait : Simple {
|
||||
fun bar(): String {
|
||||
return test("O") + Simple.testStatic("O")
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
trait KTrait: Simple {
|
||||
interface KTrait: Simple {
|
||||
override fun test(s: String): String {
|
||||
return s + "K"
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
trait KTrait {
|
||||
interface KTrait {
|
||||
fun test(): String {
|
||||
return "base";
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
trait KTrait : Test {
|
||||
interface KTrait : Test {
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
<!DEPRECATED_TRAIT_KEYWORD!>trait<!> A {
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
package
|
||||
|
||||
public interface A {
|
||||
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
|
||||
}
|
||||
+1
-1
@@ -2,6 +2,6 @@ package test
|
||||
|
||||
annotation class A
|
||||
|
||||
trait Foo<T : @A Number> : @A CharSequence {
|
||||
interface Foo<T : @A Number> : @A CharSequence {
|
||||
fun <E, F : @A E> bar()
|
||||
}
|
||||
|
||||
+2
-2
@@ -10,7 +10,7 @@ fun func() {}
|
||||
class C
|
||||
|
||||
@file:
|
||||
trait T
|
||||
interface T
|
||||
|
||||
@file:[]
|
||||
trait T
|
||||
interface T
|
||||
+2
-2
@@ -85,7 +85,7 @@ JetFile: fileAnnotationInWrongPlace.kt
|
||||
PsiElement(IDENTIFIER)('file')
|
||||
PsiElement(COLON)(':')
|
||||
PsiWhiteSpace('\n')
|
||||
PsiElement(trait)('trait')
|
||||
PsiElement(interface)('interface')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiElement(IDENTIFIER)('T')
|
||||
PsiWhiteSpace('\n\n')
|
||||
@@ -101,6 +101,6 @@ JetFile: fileAnnotationInWrongPlace.kt
|
||||
<empty list>
|
||||
PsiElement(RBRACKET)(']')
|
||||
PsiWhiteSpace('\n')
|
||||
PsiElement(trait)('trait')
|
||||
PsiElement(interface)('interface')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiElement(IDENTIFIER)('T')
|
||||
+2
-2
@@ -1,10 +1,10 @@
|
||||
trait A1() {
|
||||
interface A1() {
|
||||
constructor(x: Int = "", y: Int) : this() {
|
||||
x + y
|
||||
}
|
||||
}
|
||||
|
||||
trait A2 private constructor(private val prop: Int) {
|
||||
interface A2 private constructor(private val prop: Int) {
|
||||
constructor(x: Int = "", y: Int) : this(x * y) {
|
||||
x + y
|
||||
}
|
||||
|
||||
@@ -181,12 +181,6 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest {
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("DeprecatedTraitKeyword.kt")
|
||||
public void testDeprecatedTraitKeyword() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/DeprecatedTraitKeyword.kt");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("DiamondFunction.kt")
|
||||
public void testDiamondFunction() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/DiamondFunction.kt");
|
||||
|
||||
@@ -50,7 +50,7 @@ public class KotlinSyntheticClassAnnotationTest extends CodegenTestCase {
|
||||
|
||||
public void testTraitImpl() {
|
||||
doTestKotlinSyntheticClass(
|
||||
"trait A { fun foo() = 42 }",
|
||||
"interface A { fun foo() = 42 }",
|
||||
JvmAbi.TRAIT_IMPL_SUFFIX,
|
||||
TRAIT_IMPL
|
||||
);
|
||||
@@ -106,7 +106,7 @@ public class KotlinSyntheticClassAnnotationTest extends CodegenTestCase {
|
||||
|
||||
public void testLocalTraitImpl() {
|
||||
doTestKotlinSyntheticClass(
|
||||
"fun foo() { trait Local { fun bar() = 42 } }",
|
||||
"fun foo() { interface Local { fun bar() = 42 } }",
|
||||
"Local$$TImpl.class",
|
||||
LOCAL_TRAIT_IMPL
|
||||
);
|
||||
@@ -114,7 +114,7 @@ public class KotlinSyntheticClassAnnotationTest extends CodegenTestCase {
|
||||
|
||||
public void testLocalTraitInterface() {
|
||||
doTestKotlinClass(
|
||||
"fun foo() { trait Local { fun bar() = 42 } }",
|
||||
"fun foo() { interface Local { fun bar() = 42 } }",
|
||||
"Local.class",
|
||||
LOCAL_CLASS
|
||||
);
|
||||
|
||||
@@ -28,7 +28,7 @@ public class MethodOrderTest: CodegenTestCase() {
|
||||
public fun testDelegatedMethod() {
|
||||
doTest(
|
||||
"""
|
||||
trait Trait {
|
||||
interface Trait {
|
||||
fun f0()
|
||||
fun f4()
|
||||
fun f3()
|
||||
|
||||
@@ -23,14 +23,13 @@ import org.jetbrains.kotlin.load.kotlin.PackageClassUtils
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.psi.JetFile
|
||||
import org.jetbrains.kotlin.test.InTextDirectivesUtils
|
||||
import org.jetbrains.kotlin.test.JetTestUtils
|
||||
import org.jetbrains.org.objectweb.asm.ClassReader
|
||||
import org.jetbrains.org.objectweb.asm.ClassVisitor
|
||||
import org.jetbrains.org.objectweb.asm.Opcodes
|
||||
import org.junit.Assert
|
||||
import java.io.File
|
||||
|
||||
public trait AbstractSMAPBaseTest {
|
||||
public interface AbstractSMAPBaseTest {
|
||||
|
||||
private fun extractSMAPFromClasses(outputFiles: Iterable<OutputFile>): List<SMAPAndFile> {
|
||||
return outputFiles.map { outputFile ->
|
||||
|
||||
@@ -227,9 +227,9 @@ public class JetDefaultModalityModifiersTest extends JetLiteFixture {
|
||||
tc.testEnumModality("abstract enum class A {}", Modality.ABSTRACT);
|
||||
tc.testEnumModality("final enum class A {}", Modality.FINAL);
|
||||
|
||||
tc.testTraitModality("trait A {}", Modality.ABSTRACT);
|
||||
tc.testTraitModality("open trait A {}", Modality.ABSTRACT);
|
||||
tc.testTraitModality("abstract trait A {}", Modality.ABSTRACT);
|
||||
tc.testTraitModality("interface A {}", Modality.ABSTRACT);
|
||||
tc.testTraitModality("open interface A {}", Modality.ABSTRACT);
|
||||
tc.testTraitModality("abstract interface A {}", Modality.ABSTRACT);
|
||||
}
|
||||
|
||||
public void testFunctionModality() {
|
||||
@@ -248,11 +248,11 @@ public class JetDefaultModalityModifiersTest extends JetLiteFixture {
|
||||
tc.testFunctionModalityInEnum("abstract enum class A { ; open fun foo() }", Modality.OPEN);
|
||||
tc.testFunctionModalityInEnum("abstract enum class A { ; abstract fun foo() }", Modality.ABSTRACT);
|
||||
|
||||
tc.testFunctionModalityInTrait("trait A { fun foo() }", Modality.ABSTRACT);
|
||||
tc.testFunctionModalityInTrait("trait A { abstract fun foo() }", Modality.ABSTRACT);
|
||||
tc.testFunctionModalityInTrait("trait A { fun foo() {} }", Modality.OPEN);
|
||||
tc.testFunctionModalityInTrait("trait A { open fun foo() {} }", Modality.OPEN);
|
||||
tc.testFunctionModalityInTrait("trait A { final fun foo() {} }", Modality.FINAL);
|
||||
tc.testFunctionModalityInTrait("interface A { fun foo() }", Modality.ABSTRACT);
|
||||
tc.testFunctionModalityInTrait("interface A { abstract fun foo() }", Modality.ABSTRACT);
|
||||
tc.testFunctionModalityInTrait("interface A { fun foo() {} }", Modality.OPEN);
|
||||
tc.testFunctionModalityInTrait("interface A { open fun foo() {} }", Modality.OPEN);
|
||||
tc.testFunctionModalityInTrait("interface A { final fun foo() {} }", Modality.FINAL);
|
||||
}
|
||||
|
||||
public void testFunctionModalityWithOverride() {
|
||||
@@ -272,11 +272,11 @@ public class JetDefaultModalityModifiersTest extends JetLiteFixture {
|
||||
tc.testFunctionModalityInEnum("abstract enum class A : C { ; open override fun foo() }", Modality.OPEN);
|
||||
tc.testFunctionModalityInEnum("abstract enum class A : C { ; abstract override fun foo() }", Modality.ABSTRACT);
|
||||
|
||||
tc.testFunctionModalityInTrait("trait A : C { override fun foo() }", Modality.ABSTRACT);
|
||||
tc.testFunctionModalityInTrait("trait A : C { abstract override fun foo() }", Modality.ABSTRACT);
|
||||
tc.testFunctionModalityInTrait("trait A : C { override fun foo() {} }", Modality.OPEN);
|
||||
tc.testFunctionModalityInTrait("trait A : C { open override fun foo() {} }", Modality.OPEN);
|
||||
tc.testFunctionModalityInTrait("trait A : C { final override fun foo() {} }", Modality.FINAL);
|
||||
tc.testFunctionModalityInTrait("interface A : C { override fun foo() }", Modality.ABSTRACT);
|
||||
tc.testFunctionModalityInTrait("interface A : C { abstract override fun foo() }", Modality.ABSTRACT);
|
||||
tc.testFunctionModalityInTrait("interface A : C { override fun foo() {} }", Modality.OPEN);
|
||||
tc.testFunctionModalityInTrait("interface A : C { open override fun foo() {} }", Modality.OPEN);
|
||||
tc.testFunctionModalityInTrait("interface A : C { final override fun foo() {} }", Modality.FINAL);
|
||||
}
|
||||
|
||||
public void testPropertyModality() {
|
||||
@@ -297,18 +297,18 @@ public class JetDefaultModalityModifiersTest extends JetLiteFixture {
|
||||
tc.testPropertyModalityInEnum("abstract enum class A { ; open val a: Int = 0 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInEnum("abstract enum class A { ; abstract val a: Int }", Modality.ABSTRACT);
|
||||
|
||||
tc.testPropertyModalityInTrait("trait A { val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A { open val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A { abstract val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A { open abstract val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A { val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A { open val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A { abstract val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A { open abstract val a: Int }", Modality.ABSTRACT);
|
||||
|
||||
tc.testPropertyModalityInTrait("trait A { val a: Int get() = 10 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("trait A { var a: Int get() = 1; set(v: Int) {} }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("trait A { val a: Int open get }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A { var a: Int open get open set}", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A { open val a: Int get }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A { open val a: Int get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("trait A { open val a: Int final get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("interface A { val a: Int get() = 10 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("interface A { var a: Int get() = 1; set(v: Int) {} }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("interface A { val a: Int open get }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A { var a: Int open get open set}", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A { open val a: Int get }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A { open val a: Int get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("interface A { open val a: Int final get() = 1 }", Modality.OPEN);
|
||||
}
|
||||
|
||||
public void testPropertyModalityWithOverride() {
|
||||
@@ -329,18 +329,18 @@ public class JetDefaultModalityModifiersTest extends JetLiteFixture {
|
||||
tc.testPropertyModalityInEnum("abstract enum class A : C { ; open override val a: Int = 0 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInEnum("abstract enum class A : C { ; abstract override val a: Int }", Modality.ABSTRACT);
|
||||
|
||||
tc.testPropertyModalityInTrait("trait A : C { override val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A : C { open override val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A : C { abstract override val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A : C { open abstract override val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A : C { override val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A : C { open override val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A : C { abstract override val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A : C { open abstract override val a: Int }", Modality.ABSTRACT);
|
||||
|
||||
tc.testPropertyModalityInTrait("trait A : C { override val a: Int get() = 10 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("trait A : C { override var a: Int get() = 1; set(v: Int) {} }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("trait A : C { override val a: Int open get }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A : C { override var a: Int open get open set }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A : C { open override val a: Int get }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("trait A : C { open override val a: Int get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("trait A : C { open override val a: Int final get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("interface A : C { override val a: Int get() = 10 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("interface A : C { override var a: Int get() = 1; set(v: Int) {} }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("interface A : C { override val a: Int open get }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A : C { override var a: Int open get open set }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A : C { open override val a: Int get }", Modality.ABSTRACT);
|
||||
tc.testPropertyModalityInTrait("interface A : C { open override val a: Int get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyModalityInTrait("interface A : C { open override val a: Int final get() = 1 }", Modality.OPEN);
|
||||
}
|
||||
|
||||
public void testPropertyAccessorModality() {
|
||||
@@ -381,23 +381,23 @@ public class JetDefaultModalityModifiersTest extends JetLiteFixture {
|
||||
tc.testPropertyAccessorModalityInClass("abstract class A { open val a: Int open get() = 10 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInClass("abstract class A { open val a: Int final get() = 10 }", Modality.FINAL);
|
||||
|
||||
tc.testPropertyAccessorModalityInTrait("trait A { val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A { val a: Int get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A { val a: Int get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A { val a: Int abstract get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A { val a: Int open get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A { val a: Int open get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A { val a: Int final get }", Modality.FINAL);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A { val a: Int final get() = 1 }", Modality.FINAL);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A { val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A { val a: Int get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A { val a: Int get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A { val a: Int abstract get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A { val a: Int open get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A { val a: Int open get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A { val a: Int final get }", Modality.FINAL);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A { val a: Int final get() = 1 }", Modality.FINAL);
|
||||
|
||||
tc.testPropertyAccessorModalityInTrait("abstract trait A { val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract trait A { val a: Int get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract trait A { val a: Int get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract trait A { val a: Int abstract get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract trait A { val a: Int open get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract trait A { val a: Int open get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract trait A { val a: Int final get }", Modality.FINAL);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract trait A { val a: Int final get() = 1 }", Modality.FINAL);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract interface A { val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract interface A { val a: Int get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract interface A { val a: Int get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract interface A { val a: Int abstract get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract interface A { val a: Int open get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract interface A { val a: Int open get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract interface A { val a: Int final get }", Modality.FINAL);
|
||||
tc.testPropertyAccessorModalityInTrait("abstract interface A { val a: Int final get() = 1 }", Modality.FINAL);
|
||||
}
|
||||
|
||||
public void testPropertyAccessorModalityWithOverride() {
|
||||
@@ -446,14 +446,14 @@ public class JetDefaultModalityModifiersTest extends JetLiteFixture {
|
||||
tc.testPropertyAccessorModalityInClass("abstract class A : C { open override val a: Int open override get() = 10 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInClass("abstract class A : C { open override val a: Int final override get() = 10 }", Modality.FINAL);
|
||||
|
||||
tc.testPropertyAccessorModalityInTrait("trait A : C { override val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A : C { override val a: Int get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A : C { override val a: Int override get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A : C { override val a: Int abstract get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A : C { override val a: Int open get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A : C { override val a: Int open override get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A : C { override val a: Int override get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A : C { override val a: Int final get }", Modality.FINAL);
|
||||
tc.testPropertyAccessorModalityInTrait("trait A : C { override val a: Int final override get() = 1 }", Modality.FINAL);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A : C { override val a: Int }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A : C { override val a: Int get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A : C { override val a: Int override get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A : C { override val a: Int abstract get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A : C { override val a: Int open get }", Modality.ABSTRACT);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A : C { override val a: Int open override get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A : C { override val a: Int override get() = 1 }", Modality.OPEN);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A : C { override val a: Int final get }", Modality.FINAL);
|
||||
tc.testPropertyAccessorModalityInTrait("interface A : C { override val a: Int final override get() = 1 }", Modality.FINAL);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user