From 9b70ab7d168c46b9f99e27fe0a9714b02133123a Mon Sep 17 00:00:00 2001 From: Svetlana Isakova Date: Wed, 14 May 2014 14:16:44 +0400 Subject: [PATCH] Removed AT, ATAT tokens Checks 'in LABELS token set' replaced with LABEL_IDENTIFIER equality --- .../jetbrains/jet/codegen/ExpressionCodegen.java | 4 ++-- .../org/jetbrains/jet/checkers/DebugInfoUtil.java | 2 +- .../jet/lang/cfg/JetControlFlowProcessor.java | 2 +- .../jet/lang/parsing/JetExpressionParsing.java | 15 +++++++-------- .../jetbrains/jet/lang/psi/JetCallExpression.java | 2 +- .../org/jetbrains/jet/lang/psi/JetPsiUtil.java | 2 +- .../jet/lang/psi/JetSimpleNameExpression.java | 2 +- .../expressions/BasicExpressionTypingVisitor.java | 4 ++-- .../types/expressions/ExpressionTypingUtils.java | 2 +- .../src/org/jetbrains/jet/lexer/JetTokens.java | 6 +----- .../jet/plugin/highlighter/JetHighlighter.java | 1 - .../highlighter/LabelsHighlightingVisitor.java | 2 +- .../translate/expression/ExpressionVisitor.java | 2 +- .../kotlin/doc/highlighter/SyntaxHighlighter.kt | 1 - 14 files changed, 20 insertions(+), 27 deletions(-) diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java index 8a494984dd7..c8ba6944cdd 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/ExpressionCodegen.java @@ -2920,7 +2920,7 @@ public class ExpressionCodegen extends JetVisitor implem if (expression.getParent() instanceof JetPrefixExpression) { JetPrefixExpression parent = (JetPrefixExpression) expression.getParent(); JetSimpleNameExpression operationSign = parent.getOperationReference(); - if (JetTokens.LABELS.contains(operationSign.getReferencedNameElementType())) { + if (operationSign.getReferencedNameElementType() == JetTokens.LABEL_IDENTIFIER) { return operationSign; } } @@ -2930,7 +2930,7 @@ public class ExpressionCodegen extends JetVisitor implem @Override public StackValue visitPrefixExpression(@NotNull JetPrefixExpression expression, StackValue receiver) { JetSimpleNameExpression operationSign = expression.getOperationReference(); - if (JetTokens.LABELS.contains(operationSign.getReferencedNameElementType())) { + if (operationSign.getReferencedNameElementType() == JetTokens.LABEL_IDENTIFIER) { return genQualified(receiver, expression.getBaseExpression()); } diff --git a/compiler/frontend/src/org/jetbrains/jet/checkers/DebugInfoUtil.java b/compiler/frontend/src/org/jetbrains/jet/checkers/DebugInfoUtil.java index f484fd4d99f..af058fd39d6 100644 --- a/compiler/frontend/src/org/jetbrains/jet/checkers/DebugInfoUtil.java +++ b/compiler/frontend/src/org/jetbrains/jet/checkers/DebugInfoUtil.java @@ -96,7 +96,7 @@ public class DebugInfoUtil { if (EXCLUDED.contains(referencedNameElementType)) { return; } - if (JetTokens.LABELS.contains(referencedNameElementType)) return; + if (referencedNameElementType == JetTokens.LABEL_IDENTIFIER) return; } else if (nameExpression.getReferencedNameElementType() == JetTokens.THIS_KEYWORD) { return; diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java b/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java index 9c8e778c450..b150009c25b 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java @@ -374,7 +374,7 @@ public class JetControlFlowProcessor { IElementType operationType = operationSign.getReferencedNameElementType(); JetExpression baseExpression = expression.getBaseExpression(); if (baseExpression == null) return; - if (JetTokens.LABELS.contains(operationType)) { + if (operationType == JetTokens.LABEL_IDENTIFIER) { String referencedName = operationSign.getReferencedName(); visitLabeledExpression(referencedName.substring(1), baseExpression, context); } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java index 01fa290c336..9ed1ddfe2c0 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java @@ -67,7 +67,7 @@ public class JetExpressionParsing extends AbstractJetParsing { // Prefix MINUS, PLUS, MINUSMINUS, PLUSPLUS, EXCL, EXCLEXCL, // Joining complex tokens makes it necessary to put EXCLEXCL here - LBRACKET, LABEL_IDENTIFIER, AT, ATAT, + LBRACKET, LABEL_IDENTIFIER, // Atomic COLONCOLON, // callable reference @@ -138,7 +138,7 @@ public class JetExpressionParsing extends AbstractJetParsing { POSTFIX(PLUSPLUS, MINUSMINUS, EXCLEXCL, DOT, SAFE_ACCESS), // typeArguments? valueArguments : typeArguments : arrayAccess - PREFIX(MINUS, PLUS, MINUSMINUS, PLUSPLUS, EXCL, LABEL_IDENTIFIER, AT, ATAT) { // attributes + PREFIX(MINUS, PLUS, MINUSMINUS, PLUSPLUS, EXCL, LABEL_IDENTIFIER) { // attributes @Override public void parseHigherPrecedence(JetExpressionParsing parser) { @@ -498,10 +498,9 @@ public class JetExpressionParsing extends AbstractJetParsing { */ protected boolean parseCallWithClosure() { boolean success = false; - - while (at(LBRACE) || atSet(LABELS) && lookahead(1) == LBRACE) { + while ((at(LBRACE) || at(LABEL_IDENTIFIER) && lookahead(1) == LBRACE)) { if (!at(LBRACE)) { - assert _atSet(LABELS); + assert _at(LABEL_IDENTIFIER); parsePrefixExpression(); } else { @@ -1397,7 +1396,7 @@ public class JetExpressionParsing extends AbstractJetParsing { if (at(LBRACE)) { parseFunctionLiteral(true); } - else if (atSet(LABELS) && lookahead(1) == LBRACE ) { + else if (at(LABEL_IDENTIFIER) && lookahead(1) == LBRACE ) { PsiBuilder.Marker mark = mark(); parseOperationReference(); @@ -1581,11 +1580,11 @@ public class JetExpressionParsing extends AbstractJetParsing { * labels */ private void parseLabel() { - if (!eol() && atSet(LABELS)) { + if (!eol() && at(LABEL_IDENTIFIER)) { PsiBuilder.Marker labelWrap = mark(); PsiBuilder.Marker mark = mark(); - advance(); // LABELS + advance(); // LABEL_IDENTIFIER mark.done(LABEL_REFERENCE); labelWrap.done(LABEL_QUALIFIER); diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetCallExpression.java b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetCallExpression.java index b3109997bae..50e9d3f6de6 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetCallExpression.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetCallExpression.java @@ -78,7 +78,7 @@ public class JetCallExpression extends JetReferenceExpression implements JetCall } else if (psi instanceof JetPrefixExpression) { JetPrefixExpression prefixExpression = (JetPrefixExpression) psi; - if (JetTokens.LABELS.contains(prefixExpression.getOperationReference().getReferencedNameElementType())) { + if (prefixExpression.getOperationReference().getReferencedNameElementType() == JetTokens.LABEL_IDENTIFIER) { JetExpression labeledExpression = prefixExpression.getBaseExpression(); if (labeledExpression instanceof JetFunctionLiteralExpression) { result.add(prefixExpression); diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetPsiUtil.java b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetPsiUtil.java index 842e8b8495b..3ee23ea7e7a 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetPsiUtil.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetPsiUtil.java @@ -133,7 +133,7 @@ public class JetPsiUtil { } public static boolean isLabeledExpression(JetPrefixExpression expression) { - return JetTokens.LABELS.contains(expression.getOperationReference().getReferencedNameElementType()); + return expression.getOperationReference().getReferencedNameElementType() == JetTokens.LABEL_IDENTIFIER; } @NotNull diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetSimpleNameExpression.java b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetSimpleNameExpression.java index 0a9c3bf3671..ae09ceeb6fa 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetSimpleNameExpression.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetSimpleNameExpression.java @@ -30,7 +30,7 @@ import org.jetbrains.jet.lexer.JetTokens; import static org.jetbrains.jet.lexer.JetTokens.*; public class JetSimpleNameExpression extends JetReferenceExpression { - public static final TokenSet REFERENCE_TOKENS = TokenSet.orSet(LABELS, TokenSet.create(IDENTIFIER, FIELD_IDENTIFIER, THIS_KEYWORD, SUPER_KEYWORD)); + public static final TokenSet REFERENCE_TOKENS = TokenSet.create(LABEL_IDENTIFIER, IDENTIFIER, FIELD_IDENTIFIER, THIS_KEYWORD, SUPER_KEYWORD); public JetSimpleNameExpression(@NotNull ASTNode node) { super(node); diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.java b/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.java index be8a56f607c..36c1ff0a372 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.java @@ -617,7 +617,7 @@ public class BasicExpressionTypingVisitor extends ExpressionTypingVisitor { IElementType operationType = operationSign.getReferencedNameElementType(); // If it's a labeled expression - if (JetTokens.LABELS.contains(operationType)) { + if (operationType == JetTokens.LABEL_IDENTIFIER) { return visitLabeledExpression(expression, context, isStatement); } @@ -746,7 +746,7 @@ public class BasicExpressionTypingVisitor extends ExpressionTypingVisitor { JetExpression baseExpression = expression.getBaseExpression(); assert baseExpression != null; JetSimpleNameExpression operationSign = expression.getOperationReference(); - assert JetTokens.LABELS.contains(operationSign.getReferencedNameElementType()); + assert operationSign.getReferencedNameElementType() == JetTokens.LABEL_IDENTIFIER; return facade.getTypeInfo(baseExpression, context, isStatement); } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.java b/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.java index 3b6d53b9ae9..92edee8febb 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.java @@ -485,6 +485,6 @@ public class ExpressionTypingUtils { public static boolean isUnaryExpressionDependentOnExpectedType(@NotNull JetUnaryExpression expression) { IElementType operationType = expression.getOperationReference().getReferencedNameElementType(); - return JetTokens.LABELS.contains(operationType) || operationType == JetTokens.EXCLEXCL; + return operationType == JetTokens.LABEL_IDENTIFIER || operationType == JetTokens.EXCLEXCL; } } diff --git a/compiler/frontend/src/org/jetbrains/jet/lexer/JetTokens.java b/compiler/frontend/src/org/jetbrains/jet/lexer/JetTokens.java index a58949cfd9c..ec6a5e0d61d 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lexer/JetTokens.java +++ b/compiler/frontend/src/org/jetbrains/jet/lexer/JetTokens.java @@ -127,10 +127,6 @@ public interface JetTokens { JetKeywordToken NOT_IN = JetKeywordToken.keyword("NOT_IN", "!in"); JetKeywordToken NOT_IS = JetKeywordToken.keyword("NOT_IS", "!is"); JetSingleValueToken HASH = new JetSingleValueToken("HASH", "#"); - JetSingleValueToken AT = new JetSingleValueToken("AT", "@"); - JetSingleValueToken ATAT = new JetSingleValueToken("ATAT", "@@"); - - TokenSet LABELS = TokenSet.create(AT, ATAT, LABEL_IDENTIFIER); JetSingleValueToken COMMA = new JetSingleValueToken("COMMA", ","); @@ -203,7 +199,7 @@ public interface JetTokens { COLON, RANGE, EQ, MULTEQ, DIVEQ, PERCEQ, PLUSEQ, MINUSEQ, NOT_IN, NOT_IS, - IDENTIFIER, LABEL_IDENTIFIER, ATAT, AT); + IDENTIFIER, LABEL_IDENTIFIER); TokenSet AUGMENTED_ASSIGNMENTS = TokenSet.create(PLUSEQ, MINUSEQ, MULTEQ, PERCEQ, DIVEQ); TokenSet ALL_ASSIGNMENTS = TokenSet.create(EQ, PLUSEQ, MINUSEQ, MULTEQ, PERCEQ, DIVEQ); diff --git a/idea/src/org/jetbrains/jet/plugin/highlighter/JetHighlighter.java b/idea/src/org/jetbrains/jet/plugin/highlighter/JetHighlighter.java index 52789c34d3a..ecd2717c2e7 100644 --- a/idea/src/org/jetbrains/jet/plugin/highlighter/JetHighlighter.java +++ b/idea/src/org/jetbrains/jet/plugin/highlighter/JetHighlighter.java @@ -53,7 +53,6 @@ public class JetHighlighter extends SyntaxHighlighterBase { keys1.put(JetTokens.AS_SAFE, JetHighlightingColors.KEYWORD); keys1.put(JetTokens.LABEL_IDENTIFIER, JetHighlightingColors.LABEL); - keys1.put(JetTokens.ATAT, JetHighlightingColors.LABEL); keys1.put(JetTokens.INTEGER_LITERAL, JetHighlightingColors.NUMBER); keys1.put(JetTokens.FLOAT_LITERAL, JetHighlightingColors.NUMBER); diff --git a/idea/src/org/jetbrains/jet/plugin/highlighter/LabelsHighlightingVisitor.java b/idea/src/org/jetbrains/jet/plugin/highlighter/LabelsHighlightingVisitor.java index bd35678166f..4551cbb91fc 100644 --- a/idea/src/org/jetbrains/jet/plugin/highlighter/LabelsHighlightingVisitor.java +++ b/idea/src/org/jetbrains/jet/plugin/highlighter/LabelsHighlightingVisitor.java @@ -31,7 +31,7 @@ class LabelsHighlightingVisitor extends HighlightingVisitor { @Override public void visitPrefixExpression(@NotNull JetPrefixExpression expression) { JetSimpleNameExpression operationSign = expression.getOperationReference(); - if (JetTokens.LABELS.contains(operationSign.getReferencedNameElementType())) { + if (operationSign.getReferencedNameElementType() == JetTokens.LABEL_IDENTIFIER) { JetPsiChecker.highlightName(holder, operationSign, JetHighlightingColors.LABEL); } } diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/expression/ExpressionVisitor.java b/js/js.translator/src/org/jetbrains/k2js/translate/expression/ExpressionVisitor.java index 52689c4871a..2228e65d517 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/expression/ExpressionVisitor.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/expression/ExpressionVisitor.java @@ -300,7 +300,7 @@ public final class ExpressionVisitor extends TranslatorVisitor { JetSimpleNameExpression operationReference = expression.getOperationReference(); IElementType operationToken = operationReference.getReferencedNameElementType(); JsNode result; - if (JetTokens.LABELS.contains(operationToken)) { + if (operationToken == JetTokens.LABEL_IDENTIFIER) { JetExpression baseExpression = expression.getBaseExpression(); assert baseExpression != null; result = new JsLabel(context.scope().declareName(getReferencedName(operationReference)), diff --git a/libraries/tools/kdoc/src/main/kotlin/org/jetbrains/kotlin/doc/highlighter/SyntaxHighlighter.kt b/libraries/tools/kdoc/src/main/kotlin/org/jetbrains/kotlin/doc/highlighter/SyntaxHighlighter.kt index 290d143e18d..7d885541980 100644 --- a/libraries/tools/kdoc/src/main/kotlin/org/jetbrains/kotlin/doc/highlighter/SyntaxHighlighter.kt +++ b/libraries/tools/kdoc/src/main/kotlin/org/jetbrains/kotlin/doc/highlighter/SyntaxHighlighter.kt @@ -120,7 +120,6 @@ class SyntaxHighlighter() { styleMap.put(JetTokens.CLOSING_QUOTE, "string") styleMap.put(JetTokens.CHARACTER_LITERAL, "string") styleMap.put(JetTokens.LABEL_IDENTIFIER, "label") - styleMap.put(JetTokens.ATAT, "label") styleMap.put(JetTokens.FIELD_IDENTIFIER, "field") styleMap.put(TokenType.BAD_CHARACTER, "bad") putAll(JetTokens.STRINGS, "string")