From 60f0c98720cbd958e8ff7d6884c4643fb9e1c79e Mon Sep 17 00:00:00 2001 From: svtk Date: Fri, 7 Oct 2011 19:37:15 +0400 Subject: [PATCH] Added 'inline' keyword --- .../org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java | 2 -- .../src/org/jetbrains/jet/lang/types/JetTypeInferrer.java | 5 +++++ compiler/frontend/src/org/jetbrains/jet/lexer/JetTokens.java | 5 +++-- 3 files changed, 8 insertions(+), 4 deletions(-) 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 5c6a6707b46..95b3aa92012 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.java @@ -91,11 +91,9 @@ public class JetControlFlowProcessor { } private class CFPVisitor extends JetVisitorVoid { -// private final boolean preferBlock; private final boolean inCondition; private CFPVisitor(boolean inCondition) { -// this.preferBlock = preferBlock; this.inCondition = inCondition; } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/types/JetTypeInferrer.java b/compiler/frontend/src/org/jetbrains/jet/lang/types/JetTypeInferrer.java index 0f31a0bc99d..58f3149be7e 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/types/JetTypeInferrer.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/types/JetTypeInferrer.java @@ -2771,6 +2771,11 @@ public class JetTypeInferrer { return context.services.checkType(functionDescriptor.getReturnType(), arrayAccessExpression, context); } + @Override + public JetType visitAnnotatedExpression(JetAnnotatedExpression expression, TypeInferenceContext data) { + return getType(expression.getBaseExpression(), data); + } + @Override public JetType visitJetElement(JetElement element, TypeInferenceContext context) { context.trace.report(UNSUPPORTED.on(element, "in a block")); diff --git a/compiler/frontend/src/org/jetbrains/jet/lexer/JetTokens.java b/compiler/frontend/src/org/jetbrains/jet/lexer/JetTokens.java index 476d1e20751..1322d09776c 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lexer/JetTokens.java +++ b/compiler/frontend/src/org/jetbrains/jet/lexer/JetTokens.java @@ -136,6 +136,7 @@ public interface JetTokens { JetKeywordToken CATCH_KEYWORD = JetKeywordToken.softKeyword("catch"); JetKeywordToken OUT_KEYWORD = JetKeywordToken.softKeyword("out"); JetKeywordToken VARARG_KEYWORD = JetKeywordToken.softKeyword("vararg"); + JetKeywordToken INLINE_KEYWORD = JetKeywordToken.softKeyword("inline"); JetKeywordToken FINALLY_KEYWORD = JetKeywordToken.softKeyword("finally"); JetKeywordToken FINAL_KEYWORD = JetKeywordToken.softKeyword("final"); @@ -155,12 +156,12 @@ public interface JetTokens { TokenSet SOFT_KEYWORDS = TokenSet.create(IMPORT_KEYWORD, WHERE_KEYWORD, BY_KEYWORD, GET_KEYWORD, SET_KEYWORD, ABSTRACT_KEYWORD, ENUM_KEYWORD, OPEN_KEYWORD, ANNOTATION_KEYWORD, OVERRIDE_KEYWORD, PRIVATE_KEYWORD, PUBLIC_KEYWORD, INTERNAL_KEYWORD, PROTECTED_KEYWORD, - CATCH_KEYWORD, FINALLY_KEYWORD, REF_KEYWORD, OUT_KEYWORD, FINAL_KEYWORD, VARARG_KEYWORD + CATCH_KEYWORD, FINALLY_KEYWORD, REF_KEYWORD, OUT_KEYWORD, FINAL_KEYWORD, VARARG_KEYWORD, INLINE_KEYWORD ); TokenSet MODIFIER_KEYWORDS = TokenSet.create(ABSTRACT_KEYWORD, ENUM_KEYWORD, OPEN_KEYWORD, ANNOTATION_KEYWORD, OVERRIDE_KEYWORD, PRIVATE_KEYWORD, PUBLIC_KEYWORD, INTERNAL_KEYWORD, - PROTECTED_KEYWORD, REF_KEYWORD, OUT_KEYWORD, IN_KEYWORD, FINAL_KEYWORD, VARARG_KEYWORD + PROTECTED_KEYWORD, REF_KEYWORD, OUT_KEYWORD, IN_KEYWORD, FINAL_KEYWORD, VARARG_KEYWORD, INLINE_KEYWORD ); TokenSet WHITE_SPACE_OR_COMMENT_BIT_SET = TokenSet.create(WHITE_SPACE, BLOCK_COMMENT, EOL_COMMENT, DOC_COMMENT); TokenSet WHITESPACES = TokenSet.create(TokenType.WHITE_SPACE);