Reserve 'typeof' as a keyword

This commit is contained in:
Alexey Tsvetkov
2015-12-09 18:37:31 +03:00
parent 4c3f620255
commit 199827635f
141 changed files with 1126 additions and 1102 deletions
@@ -1,4 +1,4 @@
/* The following code was generated by JFlex 1.4.3 on 11/30/15 6:43 PM */
/* The following code was generated by JFlex 1.4.3 on 12/9/15 7:45 PM */
package org.jetbrains.kotlin.kdoc.lexer;
@@ -6,15 +6,14 @@ import com.intellij.lexer.FlexLexer;
import com.intellij.psi.TokenType;
import com.intellij.psi.tree.IElementType;
import com.intellij.util.text.CharArrayUtil;
import java.lang.Character;
import org.jetbrains.kotlin.kdoc.parser.KDocKnownTag;
/**
* This class is a scanner generated by
* <a href="http://www.jflex.de/">JFlex</a> 1.4.3
* on 11/30/15 6:43 PM from the specification file
* <tt>/Users/abreslav/work/kotlin/compiler/frontend/src/org/jetbrains/kotlin/kdoc/lexer/KDoc.flex</tt>
* on 12/9/15 7:45 PM from the specification file
* <tt>/home/user/projects/kotlin/compiler/frontend/src/org/jetbrains/kotlin/kdoc/lexer/KDoc.flex</tt>
*/
class _KDocLexer implements FlexLexer {
/** initial size of the lookahead buffer */
@@ -247,6 +247,7 @@ LONG_TEMPLATE_ENTRY_START=\$\{
"false" { return KtTokens.FALSE_KEYWORD ;}
"super" { return KtTokens.SUPER_KEYWORD ;}
"yield" { return KtTokens.YIELD_KEYWORD ;}
"typeof" { return KtTokens.TYPEOF_KEYWORD ;}
"when" { return KtTokens.WHEN_KEYWORD ;}
"true" { return KtTokens.TRUE_KEYWORD ;}
"this" { return KtTokens.THIS_KEYWORD ;}
@@ -79,6 +79,7 @@ public interface KtTokens {
// Reserved for future use:
KtKeywordToken YIELD_KEYWORD = KtKeywordToken.keyword("yield");
KtKeywordToken TYPEOF_KEYWORD = KtKeywordToken.keyword("typeof");
KtToken AS_SAFE = KtKeywordToken.keyword("AS_SAFE");//new KtToken("as?");
@@ -192,7 +193,8 @@ public interface KtTokens {
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, AS_SAFE,
YIELD_KEYWORD
YIELD_KEYWORD,
TYPEOF_KEYWORD
);
TokenSet SOFT_KEYWORDS = TokenSet.create(FILE_KEYWORD, IMPORT_KEYWORD, WHERE_KEYWORD, BY_KEYWORD, GET_KEYWORD,
@@ -1,21 +1,18 @@
/* The following code was generated by JFlex 1.4.3 on 11/30/15 6:43 PM */
/* The following code was generated by JFlex 1.4.3 on 12/9/15 7:45 PM */
package org.jetbrains.kotlin.lexer;
import java.util.*;
import com.intellij.lexer.*;
import com.intellij.psi.*;
import com.intellij.lexer.FlexLexer;
import com.intellij.psi.TokenType;
import com.intellij.psi.tree.IElementType;
import com.intellij.util.containers.Stack;
import org.jetbrains.kotlin.lexer.KotlinLexerException;
import org.jetbrains.kotlin.lexer.KtTokens;
/**
* This class is a scanner generated by
* <a href="http://www.jflex.de/">JFlex</a> 1.4.3
* on 11/30/15 6:43 PM from the specification file
* <tt>/Users/abreslav/work/kotlin/compiler/frontend/src/org/jetbrains/kotlin/lexer/Kotlin.flex</tt>
* on 12/9/15 7:45 PM from the specification file
* <tt>/home/user/projects/kotlin/compiler/frontend/src/org/jetbrains/kotlin/lexer/Kotlin.flex</tt>
*/
class _JetLexer implements FlexLexer {
/** initial size of the lookahead buffer */
@@ -159,12 +156,13 @@ class _JetLexer implements FlexLexer {
"\1\115\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\4\3\1\130\1\131\7\3\1\132\1\100"+
"\1\0\1\133\1\134\2\3\1\135\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\0\1\133\1\134\3\3\1\135\1\136\2\3\1\137"+
"\1\140\2\3\1\141\1\142\1\0\1\3\1\143\2\3"+
"\1\144\1\3\1\145\2\3\1\146\3\3\1\147\1\150"+
"\1\151";
private static int [] zzUnpackAction() {
int [] result = new int[234];
int [] result = new int[236];
int offset = 0;
offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
return result;
@@ -215,13 +213,13 @@ class _JetLexer implements FlexLexer {
"\0\u0200\0\u1fc0\0\u2000\0\u0200\0\u2040\0\u2080\0\u20c0\0\u2100"+
"\0\u0200\0\u0200\0\u2140\0\u2180\0\u21c0\0\u2200\0\u2240\0\u2280"+
"\0\u22c0\0\u0200\0\u0180\0\u2300\0\u0c80\0\u0200\0\u2340\0\u2380"+
"\0\u0200\0\u0200\0\u23c0\0\u2400\0\u0200\0\u0200\0\u2440\0\u2480"+
"\0\u0200\0\u0200\0\u24c0\0\u2500\0\u2540\0\u2580\0\u0200\0\u25c0"+
"\0\u0200\0\u2600\0\u2640\0\u0200\0\u2680\0\u26c0\0\u2700\0\u0200"+
"\0\u0200\0\u0200";
"\0\u23c0\0\u0200\0\u0200\0\u2400\0\u2440\0\u0200\0\u0200\0\u2480"+
"\0\u24c0\0\u0200\0\u0200\0\u2500\0\u2540\0\u0200\0\u2580\0\u25c0"+
"\0\u0200\0\u2600\0\u0200\0\u2640\0\u2680\0\u0200\0\u26c0\0\u2700"+
"\0\u2740\0\u0200\0\u0200\0\u0200";
private static int [] zzUnpackRowMap() {
int [] result = new int[234];
int [] result = new int[236];
int offset = 0;
offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result);
return result;
@@ -431,66 +429,68 @@ class _JetLexer implements FlexLexer {
"\2\11\6\0\4\11\1\0\2\11\3\0\1\11\2\0"+
"\4\11\2\0\16\11\1\316\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\317\15\11\21\0\2\11\1\0"+
"\4\11\2\0\3\11\1\317\5\11\1\320\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\6\11\1\321\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\322\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\17\11\1\323\1\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\324\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\325\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\326\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\327\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\330\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\331\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\332\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\333\16\11\21\0\2\334"+
"\11\0\1\334\1\0\1\334\2\0\2\334\16\0\2\334"+
"\3\0\2\334\3\0\1\334\2\0\1\334\22\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\335\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\336\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\7\11\1\337\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\340\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\341\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\342\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\343\3\11\2\0\21\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\2\0\1\205\22\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\12\11\21\0\2\11\1\0"+
"\2\11\1\344\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\6\11\1\321\12\11\21\0\2\11\1\0"+
"\4\11\2\0\3\11\1\345\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\17\11\1\322\1\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\323\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\324\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\325\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\326\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\327\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\330\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\331\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\332\16\11\21\0\2\333\11\0\1\333"+
"\1\0\1\333\2\0\2\333\16\0\2\333\3\0\2\333"+
"\3\0\1\333\2\0\1\333\22\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\334\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\335\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\336\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\337\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\340\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\341"+
"\3\11\2\0\21\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\2\0\1\205\22\0\2\11\1\0\2\11\6\0"+
"\4\11\1\0\2\11\3\0\1\11\2\0\2\11\1\342"+
"\1\11\2\0\21\11\21\0\2\11\1\0\2\11\6\0"+
"\4\11\2\0\2\11\1\346\16\11\21\0\2\11\1\0"+
"\2\11\6\0\4\11\1\0\2\11\3\0\1\347\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\343\15\11\21\0\2\11\1\0\2\11\6\0"+
"\3\11\1\350\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\344\16\11\21\0\2\11\1\0\2\11\6\0"+
"\4\11\1\0\2\11\3\0\1\345\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\346"+
"\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\347"+
"\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\350"+
"\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\351\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\352\16\11"+
"\20\0";
"\10\11\1\351\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\352\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\353"+
"\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\354\16\11\20\0";
private static int [] zzUnpackTrans() {
int [] result = new int[10048];
int [] result = new int[10112];
int offset = 0;
offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result);
return result;
@@ -539,10 +539,10 @@ class _JetLexer implements FlexLexer {
"\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\12\1\1\11\15\1\1\11\2\0\1\1\1\11"+
"\1\1\3\11\22\1\1\11\1\0\16\1\1\0\17\1";
"\1\1\3\11\22\1\1\11\1\0\17\1\1\0\20\1";
private static int [] zzUnpackAttribute() {
int [] result = new int[234];
int [] result = new int[236];
int offset = 0;
offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result);
return result;
@@ -892,167 +892,167 @@ class _JetLexer implements FlexLexer {
case 22:
{ return KtTokens.LBRACKET ;
}
case 105: break;
case 106: break;
case 78:
{ return KtTokens.FUN_KEYWORD ;
}
case 106: break;
case 107: break;
case 48:
{ return KtTokens.IN_KEYWORD ;
}
case 107: break;
case 108: break;
case 58:
{ return KtTokens.GTEQ ;
}
case 108: break;
case 109: break;
case 87:
{ return KtTokens.TRUE_KEYWORD ;
}
case 109: break;
case 110: break;
case 13:
{ return KtTokens.RBRACE ;
}
case 110: break;
case 111: break;
case 10:
{ return KtTokens.CHARACTER_LITERAL;
}
case 111: break;
case 112: break;
case 7:
{ return KtTokens.EXCL ;
}
case 112: break;
case 113: break;
case 80:
{ return KtTokens.VAL_KEYWORD ;
}
case 113: break;
case 114: break;
case 42:
{ return KtTokens.EXCLEQ ;
}
case 114: break;
case 115: break;
case 45:
{ return KtTokens.MINUSEQ ;
}
case 115: break;
case 116: break;
case 36:
{ return KtTokens.FLOAT_LITERAL;
}
case 116: break;
case 117: break;
case 51:
{ return KtTokens.AS_KEYWORD ;
}
case 117: break;
case 118: break;
case 90:
{ return KtTokens.WHEN_KEYWORD ;
}
case 118: break;
case 119: break;
case 16:
{ return KtTokens.QUEST ;
}
case 119: break;
case 120: break;
case 95:
{ return KtTokens.FALSE_KEYWORD ;
}
case 120: break;
case 121: break;
case 34:
{ lBraceCount++; return KtTokens.LBRACE;
}
case 121: break;
case 122: break;
case 44:
{ return KtTokens.MINUSMINUS;
}
case 122: break;
case 123: break;
case 66:
{ return KtTokens.ESCAPE_SEQUENCE;
}
case 123: break;
case 124: break;
case 5:
{ return KtTokens.DIV ;
}
case 124: break;
case 125: break;
case 79:
{ return KtTokens.FOR_KEYWORD ;
}
case 125: break;
case 126: break;
case 30:
{ popState(); yypushback(1); return KtTokens.DANGLING_NEWLINE;
}
case 126: break;
case 127: break;
case 52:
{ return KtTokens.DO_KEYWORD ;
}
case 127: break;
case 102:
case 128: break;
case 103:
{ return KtTokens.CONTINUE_KEYWORD ;
}
case 128: break;
case 104:
case 129: break;
case 105:
{ return KtTokens.INTERFACE_KEYWORD ;
}
case 129: break;
case 130: break;
case 75:
{ pushState(RAW_STRING); return KtTokens.OPEN_QUOTE;
}
case 130: break;
case 131: break;
case 4:
{ return KtTokens.WHITE_SPACE;
}
case 131: break;
case 132: break;
case 97:
{ return KtTokens.BREAK_KEYWORD ;
}
case 132: break;
case 133: break;
case 85:
{ yypushback(3); return KtTokens.EXCL;
}
case 133: break;
case 134: break;
case 60:
{ return KtTokens.OROR ;
}
case 134: break;
case 135: break;
case 20:
{ return KtTokens.PERC ;
}
case 135: break;
case 136: break;
case 73:
{ return KtTokens.EXCLEQEQEQ;
}
case 136: break;
case 137: break;
case 61:
{ return KtTokens.PERCEQ ;
}
case 137: break;
case 138: break;
case 43:
{ return KtTokens.RANGE ;
}
case 138: break;
case 139: break;
case 54:
{ return KtTokens.DOUBLE_ARROW;
}
case 139: break;
case 140: break;
case 38:
{ return KtTokens.EOL_COMMENT;
}
case 140: break;
case 141: break;
case 31:
{ popState(); return KtTokens.CLOSING_QUOTE;
}
case 141: break;
case 142: break;
case 14:
{ return KtTokens.MUL ;
}
case 142: break;
case 143: break;
case 23:
{ return KtTokens.RBRACKET ;
}
case 143: break;
case 144: break;
case 56:
{ return KtTokens.PLUSPLUS ;
}
case 144: break;
case 100:
case 145: break;
case 101:
{ return KtTokens.OBJECT_KEYWORD ;
}
case 145: break;
case 146: break;
case 68:
{ if (commentDepth > 0) {
commentDepth--;
@@ -1064,97 +1064,101 @@ class _JetLexer implements FlexLexer {
return commentStateToTokenType(state);
}
}
case 146: break;
case 147: break;
case 8:
{ return KtTokens.DOT ;
}
case 147: break;
case 148: break;
case 26:
{ return KtTokens.SEMICOLON ;
}
case 148: break;
case 149: break;
case 94:
{ return KtTokens.YIELD_KEYWORD ;
}
case 149: break;
case 150: break;
case 69:
{ yypushback(2); return KtTokens.INTEGER_LITERAL;
}
case 150: break;
case 151: break;
case 32:
{ popState(); return KtTokens.IDENTIFIER;
}
case 151: break;
case 152: break;
case 81:
{ return KtTokens.VAR_KEYWORD ;
}
case 152: break;
case 103:
case 153: break;
case 104:
{ return KtTokens.TYPE_ALIAS_KEYWORD ;
}
case 153: break;
case 99:
case 154: break;
case 100:
{ return KtTokens.RETURN_KEYWORD ;
}
case 154: break;
case 155: break;
case 37:
{ return KtTokens.FIELD_IDENTIFIER;
}
case 155: break;
case 156: break;
case 15:
{ return KtTokens.EQ ;
}
case 156: break;
case 157: break;
case 28:
{ return KtTokens.AT ;
}
case 157: break;
case 158: break;
case 76:
{ return KtTokens.TRY_KEYWORD ;
}
case 158: break;
case 159: break;
case 24:
{ return KtTokens.LPAR ;
}
case 159: break;
case 160: break;
case 9:
{ return KtTokens.MINUS ;
}
case 160: break;
case 161: break;
case 70:
{ pushState(DOC_COMMENT);
commentDepth = 0;
commentStart = getTokenStart();
}
case 161: break;
case 162: break;
case 86:
{ return KtTokens.THIS_KEYWORD ;
}
case 162: break;
case 163: break;
case 1:
{ return TokenType.BAD_CHARACTER;
}
case 163: break;
case 164: break;
case 98:
{ return KtTokens.WHILE_KEYWORD ;
}
case 164: break;
case 165: break;
case 99:
{ return KtTokens.TYPEOF_KEYWORD ;
}
case 166: break;
case 40:
{ return KtTokens.DIVEQ ;
}
case 165: break;
case 167: break;
case 96:
{ return KtTokens.CLASS_KEYWORD ;
}
case 166: break;
case 168: break;
case 53:
{ return KtTokens.EQEQ ;
}
case 167: break;
case 169: break;
case 82:
{ return KtTokens.EQEQEQ ;
}
case 168: break;
case 170: break;
case 83:
{ int length = yytext().length();
if (length <= 3) { // closing """
@@ -1166,121 +1170,121 @@ class _JetLexer implements FlexLexer {
return KtTokens.REGULAR_STRING_PART;
}
}
case 169: break;
case 171: break;
case 50:
{ return KtTokens.MULTEQ ;
}
case 170: break;
case 172: break;
case 65:
{ pushState(LONG_TEMPLATE_ENTRY); return KtTokens.LONG_TEMPLATE_ENTRY_START;
}
case 171: break;
case 173: break;
case 12:
{ return KtTokens.LBRACE ;
}
case 172: break;
case 174: break;
case 39:
{ pushState(BLOCK_COMMENT);
commentDepth = 0;
commentStart = getTokenStart();
}
case 173: break;
case 175: break;
case 92:
{ return KtTokens.THROW_KEYWORD ;
}
case 174: break;
case 176: break;
case 93:
{ return KtTokens.SUPER_KEYWORD ;
}
case 175: break;
case 177: break;
case 62:
{ return KtTokens.COLONCOLON;
}
case 176: break;
case 178: break;
case 72:
{ return KtTokens.NOT_IN;
}
case 177: break;
case 179: break;
case 63:
{ return KtTokens.DOUBLE_SEMICOLON;
}
case 178: break;
case 180: break;
case 6:
{ return KtTokens.HASH ;
}
case 179: break;
case 181: break;
case 3:
{ return KtTokens.IDENTIFIER;
}
case 180: break;
case 182: break;
case 2:
{ return KtTokens.INTEGER_LITERAL;
}
case 181: break;
case 183: break;
case 88:
{ return KtTokens.ELSE_KEYWORD ;
}
case 182: break;
case 184: break;
case 11:
{ pushState(STRING); return KtTokens.OPEN_QUOTE;
}
case 183: break;
case 101:
case 185: break;
case 102:
{ return KtTokens.PACKAGE_KEYWORD ;
}
case 184: break;
case 186: break;
case 49:
{ return KtTokens.IF_KEYWORD ;
}
case 185: break;
case 187: break;
case 18:
{ return KtTokens.LT ;
}
case 186: break;
case 188: break;
case 17:
{ return KtTokens.PLUS ;
}
case 187: break;
case 189: break;
case 55:
{ return KtTokens.PLUSEQ ;
}
case 188: break;
case 190: break;
case 74:
{ return KtTokens.RESERVED ;
}
case 189: break;
case 191: break;
case 67:
{ commentDepth++;
}
case 190: break;
case 192: break;
case 27:
{ return KtTokens.COMMA ;
}
case 191: break;
case 193: break;
case 19:
{ return KtTokens.GT ;
}
case 192: break;
case 194: break;
case 77:
{ return KtTokens.AS_SAFE;
}
case 193: break;
case 195: break;
case 25:
{ return KtTokens.RPAR ;
}
case 194: break;
case 196: break;
case 71:
{ return KtTokens.NOT_IS;
}
case 195: break;
case 197: break;
case 89:
{ return KtTokens.NULL_KEYWORD ;
}
case 196: break;
case 198: break;
case 59:
{ return KtTokens.ANDAND ;
}
case 197: break;
case 199: break;
case 35:
{ if (lBraceCount == 0) {
popState();
@@ -1289,11 +1293,11 @@ class _JetLexer implements FlexLexer {
lBraceCount--;
return KtTokens.RBRACE;
}
case 198: break;
case 200: break;
case 84:
{ return KtTokens.BLOCK_COMMENT;
}
case 199: break;
case 201: break;
case 41:
{ if (zzCurrentPos == 0) {
return KtTokens.SHEBANG_COMMENT;
@@ -1303,41 +1307,41 @@ class _JetLexer implements FlexLexer {
return KtTokens.HASH;
}
}
case 200: break;
case 202: break;
case 29:
{ return KtTokens.REGULAR_STRING_PART;
}
case 201: break;
case 203: break;
case 47:
{ return KtTokens.IS_KEYWORD ;
}
case 202: break;
case 204: break;
case 91:
{ popState(); return KtTokens.THIS_KEYWORD;
}
case 203: break;
case 205: break;
case 21:
{ return KtTokens.COLON ;
}
case 204: break;
case 206: break;
case 57:
{ return KtTokens.LTEQ ;
}
case 205: break;
case 207: break;
case 33:
{
}
case 206: break;
case 208: break;
case 64:
{ pushState(SHORT_TEMPLATE_ENTRY);
yypushback(yylength() - 1);
return KtTokens.SHORT_TEMPLATE_ENTRY_START;
}
case 207: break;
case 209: break;
case 46:
{ return KtTokens.ARROW ;
}
case 208: break;
case 210: break;
default:
if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
zzAtEOF = true;
@@ -1349,14 +1353,14 @@ class _JetLexer implements FlexLexer {
zzStartRead = commentStart;
return commentStateToTokenType(state);
}
case 235: break;
case 237: break;
case DOC_COMMENT: {
int state = yystate();
popState();
zzStartRead = commentStart;
return commentStateToTokenType(state);
}
case 236: break;
case 238: break;
default:
return null;
}
+2
View File
@@ -1,5 +1,7 @@
fun yield() {}
fun typeof() {}
fun test() {
yield
typeof
}
+16
View File
@@ -15,6 +15,19 @@ JetFile: Reserved.kt
BLOCK
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n')
FUN
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiErrorElement:Expecting function name or receiver type
PsiElement(typeof)('typeof')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n\n')
FUN
PsiElement(fun)('fun')
@@ -29,5 +42,8 @@ JetFile: Reserved.kt
PsiWhiteSpace('\n ')
PsiErrorElement:Expecting an element
PsiElement(yield)('yield')
PsiWhiteSpace('\n ')
PsiErrorElement:Expecting an element
PsiElement(typeof)('typeof')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
@@ -52,6 +52,7 @@ public class KeywordStringsGenerated {
"do",
"when",
"interface",
"yield"
"yield",
"typeof"
));
}
+1 -1
View File
@@ -1,2 +1,2 @@
//statement
int as, type, val, var, fun, is, in, object, when, yield;
int as, type, val, var, fun, is, in, object, when, yield, typeof;
+2 -1
View File
@@ -7,4 +7,5 @@ val `is`: Int
val `in`: Int
val `object`: Int
val `when`: Int
val `yield`: Int
val `yield`: Int
val `typeof`: Int
@@ -1,6 +1,6 @@
//file
package test;
import as.type.val.var.fun.is.in.object.when.yield;
import as.type.val.var.fun.is.in.object.when.yield.typeof;
class Test {}
@@ -1,6 +1,6 @@
// ERROR: Unresolved reference: `as`
package test
import `as`.type.`val`.`var`.`fun`.`is`.`in`.`object`.`when`.`yield`
import `as`.type.`val`.`var`.`fun`.`is`.`in`.`object`.`when`.`yield`.`typeof`
internal class Test
+5 -3
View File
@@ -9,9 +9,6 @@ public val noImpl: Nothing
@native
public fun eval(expr: String): dynamic = noImpl
@native
public fun typeof(a: Any?): String = noImpl
@native
public val undefined: Nothing? = noImpl
@@ -34,3 +31,8 @@ public fun safeParseDouble(s : String) : Double? = noImpl
@native
public fun js(code: String): dynamic = noImpl
/**
* Function corresponding to JavaScript's `typeof` operator
*/
public inline fun jsTypeOf(a: Any?): String = js("typeof a")
File diff suppressed because it is too large Load Diff
@@ -148,7 +148,7 @@ class JsDataClassGenerator extends DataClassMethodGenerator {
JsExpression referenceEqual = JsAstUtils.equality(JsLiteral.THIS, new JsNameRef(paramName));
JsExpression isNotNull = JsAstUtils.inequality(new JsNameRef(paramName), JsLiteral.NULL);
JsExpression otherIsObject = JsAstUtils.typeof(paramName.makeRef(), context.program().getStringLiteral("object"));
JsExpression otherIsObject = JsAstUtils.typeOfIs(paramName.makeRef(), context.program().getStringLiteral("object"));
JsExpression prototypeEqual =
JsAstUtils.equality(new JsInvocation(new JsNameRef("getPrototypeOf", new JsNameRef("Object")), JsLiteral.THIS),
new JsInvocation(new JsNameRef("getPrototypeOf", new JsNameRef("Object")), new JsNameRef(paramName)));
@@ -330,7 +330,7 @@ public final class JsAstUtils {
}
@NotNull
public static JsBinaryOperation typeof(@NotNull JsExpression expression, @NotNull JsStringLiteral string) {
public static JsBinaryOperation typeOfIs(@NotNull JsExpression expression, @NotNull JsStringLiteral string) {
return equality(new JsPrefixOperation(JsUnaryOperator.TYPEOF, expression), string);
}
@@ -30,7 +30,7 @@ public fun expandIsCalls(node: JsNode, context: TranslationContext) {
val type = callee?.getArguments()?.firstOrNull()
val replacement = when (callee?.typeCheck) {
TypeCheck.TYPEOF -> typeof(instance!!, type as JsStringLiteral)
TypeCheck.TYPEOF -> typeOfIs(instance!!, type as JsStringLiteral)
TypeCheck.INSTANCEOF -> context.namer().isInstanceOf(instance!!, type!!)
else -> null
}
@@ -12,7 +12,7 @@ class A {
fun test(a: A, expectedValue: Any?, expectedTypeOfValue: String) {
assertTrue(a is A)
assertEquals(expectedValue, a.value)
assertEquals(expectedTypeOfValue, typeof(a.value))
assertEquals(expectedTypeOfValue, jsTypeOf(a.value))
}
fun box(): String {
+8 -8
View File
@@ -3,14 +3,14 @@ package foo
class A
fun box(): String {
assertEquals("number", typeof(1))
assertEquals("number", typeof(1.2))
assertEquals("boolean", typeof(true))
assertEquals("string", typeof("sss"))
assertEquals("object", typeof(null))
assertEquals("undefined", typeof(undefined))
assertEquals("object", typeof(object {}))
assertEquals("object", typeof(A()))
assertEquals("number", jsTypeOf(1))
assertEquals("number", jsTypeOf(1.2))
assertEquals("boolean", jsTypeOf(true))
assertEquals("string", jsTypeOf("sss"))
assertEquals("object", jsTypeOf(null))
assertEquals("undefined", jsTypeOf(undefined))
assertEquals("object", jsTypeOf(object {}))
assertEquals("object", jsTypeOf(A()))
return "OK"
}
@@ -17,6 +17,7 @@ this
throw
true
try
typeof
var
while
yield
@@ -26,7 +26,6 @@ protected
public
static
switch
typeof
undefined
void
with
@@ -2,7 +2,7 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
data class DataClass(var Infinity: String) {
data class DataClass(val Infinity: String) {
init {
testNotRenamed("Infinity", { Infinity })
}
@@ -2,7 +2,7 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
data class DataClass(var Kotlin: String) {
data class DataClass(val Kotlin: String) {
init {
testNotRenamed("Kotlin", { Kotlin })
}
@@ -0,0 +1,15 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
data class DataClass(val `true`: String) {
init {
testNotRenamed("true", { `true` })
}
}
fun box(): String {
DataClass("123")
return "OK"
}
@@ -2,9 +2,9 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
data class DataClass(val with: String) {
data class DataClass(val `try`: String) {
init {
testNotRenamed("with", { with })
testNotRenamed("try", { `try` })
}
}
@@ -0,0 +1,15 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
data class DataClass(var arguments: String) {
init {
testNotRenamed("arguments", { arguments })
}
}
fun box(): String {
DataClass("123")
return "OK"
}
@@ -1,15 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
data class DataClass(var `break`: String) {
init {
testNotRenamed("break", { `break` })
}
}
fun box(): String {
DataClass("123")
return "OK"
}
@@ -2,9 +2,9 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
data class DataClass(val void: String) {
data class DataClass(var NaN: String) {
init {
testNotRenamed("void", { void })
testNotRenamed("NaN", { NaN })
}
}
@@ -2,9 +2,9 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
data class DataClass(val `while`: String) {
data class DataClass(var `typeof`: String) {
init {
testNotRenamed("while", { `while` })
testNotRenamed("typeof", { `typeof` })
}
}
@@ -2,7 +2,7 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
data class DataClass(val `var`: String) {
data class DataClass(var `var`: String) {
init {
testNotRenamed("var", { `var` })
}
@@ -1,15 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
data class DataClass(var `yield`: String) {
init {
testNotRenamed("yield", { `yield` })
}
}
fun box(): String {
DataClass("123")
return "OK"
}
@@ -1,23 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun debugger()
}
class TraitImpl : Trait {
override fun debugger() { debugger() }
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("debugger", { debugger() })
}
}
fun box(): String {
TestDelegate().test()
return "OK"
}
@@ -0,0 +1,23 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun delete()
}
class TraitImpl : Trait {
override fun delete() { delete() }
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("delete", { delete() })
}
}
fun box(): String {
TestDelegate().test()
return "OK"
}
@@ -3,16 +3,16 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun `if`()
fun `else`()
}
class TraitImpl : Trait {
override fun `if`() { `if`() }
override fun `else`() { `else`() }
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("if", { `if`() })
testNotRenamed("else", { `else`() })
}
}
@@ -3,16 +3,16 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
val case: Int
fun enum()
}
class TraitImpl : Trait {
override val case: Int = 0
override fun enum() { enum() }
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("case", { case })
testNotRenamed("enum", { enum() })
}
}
@@ -0,0 +1,23 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun `false`()
}
class TraitImpl : Trait {
override fun `false`() { `false`() }
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("false", { `false`() })
}
}
fun box(): String {
TestDelegate().test()
return "OK"
}
@@ -3,13 +3,13 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun foo(enum: String)
fun foo(eval: String)
}
class TraitImpl : Trait {
override fun foo(enum: String) {
assertEquals("123", enum)
testRenamed("enum", { enum })
override fun foo(eval: String) {
assertEquals("123", eval)
testRenamed("eval", { eval })
}
}
@@ -3,13 +3,13 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun foo(delete: String)
fun foo(export: String)
}
class TraitImpl : Trait {
override fun foo(delete: String) {
assertEquals("123", delete)
testRenamed("delete", { delete })
override fun foo(export: String) {
assertEquals("123", export)
testRenamed("export", { export })
}
}
@@ -3,13 +3,13 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun foo(`null`: String)
fun foo(`for`: String)
}
class TraitImpl : Trait {
override fun foo(`null`: String) {
assertEquals("123", `null`)
testRenamed("null", { `null` })
override fun foo(`for`: String) {
assertEquals("123", `for`)
testRenamed("for", { `for` })
}
}
@@ -0,0 +1,26 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun foo(`if`: String)
}
class TraitImpl : Trait {
override fun foo(`if`: String) {
assertEquals("123", `if`)
testRenamed("if", { `if` })
}
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
foo("123")
}
}
fun box(): String {
TestDelegate().test()
return "OK"
}
@@ -1,26 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun foo(`interface`: String)
}
class TraitImpl : Trait {
override fun foo(`interface`: String) {
assertEquals("123", `interface`)
testRenamed("interface", { `interface` })
}
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
foo("123")
}
}
fun box(): String {
TestDelegate().test()
return "OK"
}
@@ -12,7 +12,7 @@ class TraitImpl : Trait {
class TestDelegate : Trait by TraitImpl() {
fun test() {
testRenamed("export", { export@ while (false) {} })
testRenamed("extends", { extends@ while (false) {} })
}
}
@@ -12,7 +12,7 @@ class TraitImpl : Trait {
class TestDelegate : Trait by TraitImpl() {
fun test() {
testRenamed("return", { `return`@ while (false) {} })
testRenamed("finally", { finally@ while (false) {} })
}
}
@@ -12,7 +12,7 @@ class TraitImpl : Trait {
class TestDelegate : Trait by TraitImpl() {
fun test() {
testRenamed("eval", { eval@ while (false) {} })
testRenamed("in", { `in`@ while (false) {} })
}
}
@@ -12,7 +12,7 @@ class TraitImpl : Trait {
class TestDelegate : Trait by TraitImpl() {
fun test() {
testRenamed("package", { `package`@ while (false) {} })
testRenamed("interface", { `interface`@ while (false) {} })
}
}
@@ -3,16 +3,16 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun `in`()
val `break`: Int
}
class TraitImpl : Trait {
override fun `in`() { `in`() }
override val `break`: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("in", { `in`() })
testNotRenamed("break", { `break` })
}
}
@@ -3,11 +3,11 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
var catch: Int
val catch: Int
}
class TraitImpl : Trait {
override var catch: Int = 0
override val catch: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
@@ -3,16 +3,16 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
val await: Int
val `class`: Int
}
class TraitImpl : Trait {
override val await: Int = 0
override val `class`: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("await", { await })
testNotRenamed("class", { `class` })
}
}
@@ -3,11 +3,11 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
var const: Int
val const: Int
}
class TraitImpl : Trait {
override var const: Int = 0
override val const: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
@@ -1,23 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
val `else`: Int
}
class TraitImpl : Trait {
override val `else`: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("else", { `else` })
}
}
fun box(): String {
TestDelegate().test()
return "OK"
}
@@ -3,16 +3,16 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
fun default()
var `continue`: Int
}
class TraitImpl : Trait {
override fun default() { default() }
override var `continue`: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("default", { default() })
testNotRenamed("continue", { `continue` })
}
}
@@ -0,0 +1,23 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
var debugger: Int
}
class TraitImpl : Trait {
override var debugger: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("debugger", { debugger })
}
}
fun box(): String {
TestDelegate().test()
return "OK"
}
@@ -0,0 +1,23 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
var default: Int
}
class TraitImpl : Trait {
override var default: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("default", { default })
}
}
fun box(): String {
TestDelegate().test()
return "OK"
}
@@ -3,11 +3,11 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
val `do`: Int
var `do`: Int
}
class TraitImpl : Trait {
override val `do`: Int = 0
override var `do`: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
@@ -1,23 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
var `false`: Int
}
class TraitImpl : Trait {
override var `false`: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("false", { `false` })
}
}
fun box(): String {
TestDelegate().test()
return "OK"
}
@@ -1,23 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
interface Trait {
var `for`: Int
}
class TraitImpl : Trait {
override var `for`: Int = 0
}
class TestDelegate : Trait by TraitImpl() {
fun test() {
testNotRenamed("for", { `for` })
}
}
fun box(): String {
TestDelegate().test()
return "OK"
}
@@ -3,11 +3,11 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
`do`
switch
}
fun box(): String {
testNotRenamed("do", { Foo.`do` })
testNotRenamed("switch", { Foo.switch })
return "OK"
}
@@ -3,11 +3,11 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
`continue`
undefined
}
fun box(): String {
testNotRenamed("continue", { Foo.`continue` })
testNotRenamed("undefined", { Foo.undefined })
return "OK"
}
@@ -3,11 +3,11 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
static
`while`
}
fun box(): String {
testNotRenamed("static", { Foo.static })
testNotRenamed("while", { Foo.`while` })
return "OK"
}
@@ -3,11 +3,11 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
`public`
`yield`
}
fun box(): String {
testNotRenamed("public", { Foo.`public` })
testNotRenamed("yield", { Foo.`yield` })
return "OK"
}
@@ -1,18 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
BAR;
fun instanceof() { instanceof() }
fun test() {
testNotRenamed("instanceof", { instanceof() })
}
}
fun box(): String {
Foo.BAR.test()
return "OK"
}
@@ -4,10 +4,10 @@ package foo
enum class Foo {
BAR;
val `this`: Int = 0
fun let() { let() }
fun test() {
testNotRenamed("this", { `this` })
testNotRenamed("let", { let() })
}
}
@@ -4,10 +4,10 @@ package foo
enum class Foo {
BAR;
var `true`: Int = 0
fun new() { new() }
fun test() {
testNotRenamed("true", { `true` })
testNotRenamed("new", { new() })
}
}
@@ -1,21 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
BAR;
fun foo(new: String) {
assertEquals("123", new)
testRenamed("new", { new })
}
fun test() {
foo("123")
}
}
fun box(): String {
Foo.BAR.test()
return "OK"
}
@@ -4,9 +4,9 @@ package foo
enum class Foo {
BAR;
fun foo(`while`: String) {
assertEquals("123", `while`)
testRenamed("while", { `while` })
fun foo(private: String) {
assertEquals("123", private)
testRenamed("private", { private })
}
fun test() {
@@ -4,9 +4,9 @@ package foo
enum class Foo {
BAR;
fun foo(`yield`: String) {
assertEquals("123", `yield`)
testRenamed("yield", { `yield` })
fun foo(protected: String) {
assertEquals("123", protected)
testRenamed("protected", { protected })
}
fun test() {
@@ -2,7 +2,8 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
class TestClass {
enum class Foo {
BAR;
fun foo(`true`: String) {
assertEquals("123", `true`)
testRenamed("true", { `true` })
@@ -14,7 +15,7 @@ class TestClass {
}
fun box(): String {
TestClass().test()
Foo.BAR.test()
return "OK"
}
@@ -4,9 +4,9 @@ package foo
enum class Foo {
BAR;
fun foo(let: String) {
assertEquals("123", let)
testRenamed("let", { let })
fun foo(`try`: String) {
assertEquals("123", `try`)
testRenamed("try", { `try` })
}
fun test() {
@@ -2,7 +2,8 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
class TestClass {
enum class Foo {
BAR;
fun `this`() { `this`() }
fun test() {
@@ -11,7 +12,7 @@ class TestClass {
}
fun box(): String {
TestClass().test()
Foo.BAR.test()
return "OK"
}
@@ -4,10 +4,10 @@ package foo
enum class Foo {
BAR;
fun import() { import() }
fun `throw`() { `throw`() }
fun test() {
testNotRenamed("import", { import() })
testNotRenamed("throw", { `throw`() })
}
}
@@ -1,18 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
BAR;
fun `try`() { `try`() }
fun test() {
testNotRenamed("try", { `try`() })
}
}
fun box(): String {
Foo.BAR.test()
return "OK"
}
@@ -1,18 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
BAR;
fun `var`() { `var`() }
fun test() {
testNotRenamed("var", { `var`() })
}
}
fun box(): String {
Foo.BAR.test()
return "OK"
}
@@ -1,18 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
BAR;
val t: Int = 0
fun test() {
testRenamed("protected", { protected@ while (false) {} })
}
}
fun box(): String {
Foo.BAR.test()
return "OK"
}
@@ -7,7 +7,7 @@ enum class Foo {
val t: Int = 0
fun test() {
testRenamed("class", { `class`@ while (false) {} })
testRenamed("public", { public@ while (false) {} })
}
}
@@ -7,7 +7,7 @@ enum class Foo {
val t: Int = 0
fun test() {
testRenamed("break", { `break`@ while (false) {} })
testRenamed("static", { static@ while (false) {} })
}
}
@@ -7,7 +7,7 @@ enum class Foo {
val t: Int = 0
fun test() {
testRenamed("private", { private@ while (false) {} })
testRenamed("typeof", { `typeof`@ while (false) {} })
}
}
@@ -2,7 +2,8 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
class TestClass {
enum class Foo {
BAR;
val t: Int = 0
fun test() {
@@ -11,7 +12,7 @@ class TestClass {
}
fun box(): String {
TestClass().test()
Foo.BAR.test()
return "OK"
}
@@ -1,18 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
BAR;
val extends: Int = 0
fun test() {
testNotRenamed("extends", { extends })
}
}
fun box(): String {
Foo.BAR.test()
return "OK"
}
@@ -1,18 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
BAR;
val finally: Int = 0
fun test() {
testNotRenamed("finally", { finally })
}
}
fun box(): String {
Foo.BAR.test()
return "OK"
}
@@ -4,7 +4,7 @@ package foo
enum class Foo {
BAR;
var function: Int = 0
val function: Int = 0
fun test() {
testNotRenamed("function", { function })
@@ -4,7 +4,7 @@ package foo
enum class Foo {
BAR;
var implements: Int = 0
val implements: Int = 0
fun test() {
testNotRenamed("implements", { implements })
@@ -0,0 +1,18 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
enum class Foo {
BAR;
val `null`: Int = 0
fun test() {
testNotRenamed("null", { `null` })
}
}
fun box(): String {
Foo.BAR.test()
return "OK"
}
@@ -2,8 +2,9 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
object TestObject {
var `package`: Int = 0
enum class Foo {
BAR;
val `package`: Int = 0
fun test() {
testNotRenamed("package", { `package` })
@@ -11,7 +12,7 @@ object TestObject {
}
fun box(): String {
TestObject.test()
Foo.BAR.test()
return "OK"
}
@@ -4,10 +4,10 @@ package foo
enum class Foo {
BAR;
var `throw`: Int = 0
var import: Int = 0
fun test() {
testNotRenamed("throw", { `throw` })
testNotRenamed("import", { import })
}
}
@@ -2,8 +2,9 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
object TestObject {
val instanceof: Int = 0
enum class Foo {
BAR;
var instanceof: Int = 0
fun test() {
testNotRenamed("instanceof", { instanceof })
@@ -11,7 +12,7 @@ object TestObject {
}
fun box(): String {
TestObject.test()
Foo.BAR.test()
return "OK"
}
@@ -2,7 +2,8 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
class TestClass {
enum class Foo {
BAR;
var `return`: Int = 0
fun test() {
@@ -11,7 +12,7 @@ class TestClass {
}
fun box(): String {
TestClass().test()
Foo.BAR.test()
return "OK"
}
@@ -4,7 +4,7 @@ package foo
enum class Foo {
BAR;
val `super`: Int = 0
var `super`: Int = 0
fun test() {
testNotRenamed("super", { `super` })
@@ -1,17 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
class TestClass {
fun arguments() { arguments() }
fun test() {
testNotRenamed("arguments", { arguments() })
}
}
fun box(): String {
TestClass().test()
return "OK"
}
@@ -0,0 +1,17 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
class TestClass {
fun case() { case() }
fun test() {
testNotRenamed("case", { case() })
}
}
fun box(): String {
TestClass().test()
return "OK"
}
@@ -3,9 +3,9 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
class TestClass {
fun foo(case: String) {
assertEquals("123", case)
testRenamed("case", { case })
fun foo(const: String) {
assertEquals("123", const)
testRenamed("const", { const })
}
fun test() {
@@ -2,7 +2,7 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
object TestObject {
class TestClass {
fun foo(`this`: String) {
assertEquals("123", `this`)
testRenamed("this", { `this` })
@@ -14,7 +14,7 @@ object TestObject {
}
fun box(): String {
TestObject.test()
TestClass().test()
return "OK"
}
@@ -2,7 +2,7 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
object TestObject {
class TestClass {
fun `return`() { `return`() }
fun test() {
@@ -11,7 +11,7 @@ object TestObject {
}
fun box(): String {
TestObject.test()
TestClass().test()
return "OK"
}
@@ -6,7 +6,7 @@ class TestClass {
val t: Int = 0
fun test() {
testRenamed("const", { const@ while (false) {} })
testRenamed("default", { default@ while (false) {} })
}
}
@@ -2,7 +2,7 @@ package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
object TestObject {
class TestClass {
val t: Int = 0
fun test() {
@@ -11,7 +11,7 @@ object TestObject {
}
fun box(): String {
TestObject.test()
TestClass().test()
return "OK"
}
@@ -4,10 +4,10 @@ package foo
class TestClass {
companion object {
fun export() { export() }
fun `break`() { `break`() }
fun test() {
testNotRenamed("export", { export() })
testNotRenamed("break", { `break`() })
}
}
}
@@ -0,0 +1,19 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
class TestClass {
companion object {
fun `class`() { `class`() }
fun test() {
testNotRenamed("class", { `class`() })
}
}
}
fun box(): String {
TestClass.test()
return "OK"
}
@@ -1,19 +0,0 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
class TestClass {
companion object {
fun `continue`() { `continue`() }
fun test() {
testNotRenamed("continue", { `continue`() })
}
}
}
fun box(): String {
TestClass.test()
return "OK"
}
@@ -0,0 +1,19 @@
package foo
// NOTE THIS FILE IS AUTO-GENERATED by the generateTestDataForReservedWords.kt. DO NOT EDIT!
class TestClass {
companion object {
fun finally() { finally() }
fun test() {
testNotRenamed("finally", { finally() })
}
}
}
fun box(): String {
TestClass.test()
return "OK"
}
@@ -4,9 +4,9 @@ package foo
class TestClass {
companion object {
fun foo(`false`: String) {
assertEquals("123", `false`)
testRenamed("false", { `false` })
fun foo(`continue`: String) {
assertEquals("123", `continue`)
testRenamed("continue", { `continue` })
}
fun test() {
@@ -4,9 +4,9 @@ package foo
class TestClass {
companion object {
fun foo(`else`: String) {
assertEquals("123", `else`)
testRenamed("else", { `else` })
fun foo(`do`: String) {
assertEquals("123", `do`)
testRenamed("do", { `do` })
}
fun test() {
@@ -4,9 +4,9 @@ package foo
class TestClass {
companion object {
fun foo(finally: String) {
assertEquals("123", finally)
testRenamed("finally", { finally })
fun foo(implements: String) {
assertEquals("123", implements)
testRenamed("implements", { implements })
}
fun test() {

Some files were not shown because too many files have changed in this diff Show More