From 1ed168fd14f11df577acf91c4f41f98e669ba64a Mon Sep 17 00:00:00 2001 From: Evgeny Gerashchenko Date: Fri, 13 Sep 2013 20:20:30 +0400 Subject: [PATCH] Removed IDE templates from completion, replaced them with keywords. --- .../JetKeywordCompletionContributor.java | 98 ++++--------------- .../handlers/JetTemplateInsertHandler.java | 91 ----------------- .../completion/keywords/InClassBeforeFun.kt | 14 ++- .../completion/keywords/InClassScope.kt | 14 ++- .../completion/keywords/InFunctionScope.kt | 22 ++--- .../completion/keywords/InTopProperty.kt | 2 +- .../keywords/InTopScopeAfterPackage.kt | 8 +- .../completion/keywords/InTypeScope.kt | 22 ++--- idea/testData/completion/keywords/TopScope.kt | 14 ++- .../completion/keywords/classObject.kt | 2 +- ...atesAndKeywordsLast.kt => KeywordsLast.kt} | 2 +- .../weighers/ParametersBeforeKeywords.kt | 2 +- .../CompletionWeigherTestGenerated.java | 10 +- 13 files changed, 73 insertions(+), 228 deletions(-) delete mode 100644 idea/src/org/jetbrains/jet/plugin/completion/handlers/JetTemplateInsertHandler.java rename idea/testData/completion/weighers/{TemplatesAndKeywordsLast.kt => KeywordsLast.kt} (53%) diff --git a/idea/src/org/jetbrains/jet/plugin/completion/JetKeywordCompletionContributor.java b/idea/src/org/jetbrains/jet/plugin/completion/JetKeywordCompletionContributor.java index 6b4da292cf7..2646a32f929 100644 --- a/idea/src/org/jetbrains/jet/plugin/completion/JetKeywordCompletionContributor.java +++ b/idea/src/org/jetbrains/jet/plugin/completion/JetKeywordCompletionContributor.java @@ -41,7 +41,6 @@ import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lexer.JetToken; import org.jetbrains.jet.lexer.JetTokens; import org.jetbrains.jet.plugin.completion.handlers.JetKeywordInsertHandler; -import org.jetbrains.jet.plugin.completion.handlers.JetTemplateInsertHandler; import org.jetbrains.jet.plugin.completion.weigher.WeigherPackage; import java.util.ArrayList; @@ -71,28 +70,6 @@ public class JetKeywordCompletionContributor extends CompletionContributor { private final static List FUNCTION_KEYWORDS = Lists.newArrayList(GET_KEYWORD.toString(), SET_KEYWORD.toString()); - private static final String IF_TEMPLATE = "if (<##>) {\n<##>\n}"; - private static final String IF_ELSE_TEMPLATE = "if (<##>) {\n<##>\n} else {\n<##>\n}"; - private static final String IF_ELSE_ONE_LINE_TEMPLATE = "if (<##>) <##> else <##>"; - private static final String FUN_TEMPLATE = "fun <##>(<##>) : <##> {\n<##>\n}"; - private static final String VAL_SIMPLE_TEMPLATE = "val <##> = <##>"; - private static final String VAL_WITH_TYPE_TEMPLATE = "val <##> : <##> = <##>"; - private static final String VAL_WITH_GETTER_TEMPLATE = "val <##> : <##>\nget() {\n<##>\n}"; - private static final String VAR_SIMPLE_TEMPLATE = "var <##> = <##>"; - private static final String VAR_WITH_TYPE_TEMPLATE = "var <##> : <##> = <##>"; - private static final String VAR_WITH_GETTER_AND_SETTER_TEMPLATE = "var <##> : <##>\nget() {\n<##>\n}\nset(value) {\n<##>\n}"; - private static final String TRAIT_TEMPLATE = "trait <##> {\n<##>\n}"; - private static final String CLASS_TEMPLATE = "class <##> {\n<##>\n}"; - private static final String CLASS_OBJECT_TEMPLATE = "class object {\n<##>\n}"; - private static final String CLASS_OBJECT_WITHOUT_CLASS_TEMPLATE = "object {\n<##>\n}"; - private static final String FOR_TEMPLATE = "for (<##> in <##>) {\n<##>\n}"; - private static final String WHEN_TEMPLATE = "when (<##>) {\n<##> -> <##>\n" + - "else -> <##>\n}"; - private static final String WHEN_ENTRY_TEMPLATE = "<##> -> <##>"; - private static final String WHILE_TEMPLATE = "while (<##>) {\n<##>\n}"; - private static final String DO_WHILE_TEMPLATE = "do {\n<##>\n} while (<##>)"; - private static final String ENUM_CLASS_TEMPLATE = "enum class <##> {\n<##>\n}"; - private static class CommentFilter implements ElementFilter { @Override public boolean isAcceptable(Object element, PsiElement context) { @@ -202,13 +179,6 @@ public class JetKeywordCompletionContributor extends CompletionContributor { } } - private static class InWhenFilter extends PositionElementFilter { - @Override - public boolean isAcceptable(Object element, PsiElement context) { - return PsiTreeUtil.getParentOfType(context, JetWhenExpression.class, false) != null; - } - } - private static class SimplePrefixMatcher extends PrefixMatcher { protected SimplePrefixMatcher(String prefix) { super(prefix); @@ -240,10 +210,6 @@ public class JetKeywordCompletionContributor extends CompletionContributor { public LookupElement apply(String keyword) { LookupElementBuilder lookupElementBuilder = LookupElementBuilder.create(keyword).bold(); - if (keyword.contains("<#<")) { - return JetTemplateInsertHandler.lookup(keyword); - } - if (!FUNCTION_KEYWORDS.contains(keyword)) { return lookupElementBuilder.withInsertHandler(KEYWORDS_INSERT_HANDLER); } @@ -270,12 +236,12 @@ public class JetKeywordCompletionContributor extends CompletionContributor { public JetKeywordCompletionContributor() { registerScopeKeywordsCompletion(InTopFilter.class.getName(), new InTopFilter(), - ABSTRACT_KEYWORD, - FINAL_KEYWORD, GET_KEYWORD, + ABSTRACT_KEYWORD, CLASS_KEYWORD, ENUM_KEYWORD, + FINAL_KEYWORD, FUN_KEYWORD, GET_KEYWORD, IMPORT_KEYWORD, INLINE_KEYWORD, INTERNAL_KEYWORD, OPEN_KEYWORD, PACKAGE_KEYWORD, PRIVATE_KEYWORD, - PROTECTED_KEYWORD, PUBLIC_KEYWORD, SET_KEYWORD, - TYPE_KEYWORD); + PROTECTED_KEYWORD, PUBLIC_KEYWORD, SET_KEYWORD, TRAIT_KEYWORD, + TYPE_KEYWORD, VAL_KEYWORD, VAR_KEYWORD); registerScopeKeywordsCompletion( "In modifier list but not in parameters", @@ -286,73 +252,49 @@ public class JetKeywordCompletionContributor extends CompletionContributor { OPEN_KEYWORD, PRIVATE_KEYWORD, PROTECTED_KEYWORD, PUBLIC_KEYWORD); registerScopeKeywordsCompletion(InClassBodyFilter.class.getName(), new InClassBodyFilter(), - ABSTRACT_KEYWORD, - FINAL_KEYWORD, GET_KEYWORD, + ABSTRACT_KEYWORD, CLASS_KEYWORD, ENUM_KEYWORD, + FINAL_KEYWORD, FUN_KEYWORD, GET_KEYWORD, INLINE_KEYWORD, INTERNAL_KEYWORD, OPEN_KEYWORD, OVERRIDE_KEYWORD, PRIVATE_KEYWORD, - PROTECTED_KEYWORD, PUBLIC_KEYWORD, SET_KEYWORD, - TYPE_KEYWORD); + PROTECTED_KEYWORD, PUBLIC_KEYWORD, SET_KEYWORD, TRAIT_KEYWORD, + TYPE_KEYWORD, VAL_KEYWORD, VAR_KEYWORD); registerScopeKeywordsCompletion(InNonClassBlockFilter.class.getName(), new InNonClassBlockFilter(), AS_KEYWORD, BREAK_KEYWORD, BY_KEYWORD, - CATCH_KEYWORD, CONTINUE_KEYWORD, - ELSE_KEYWORD, - FALSE_KEYWORD, FINALLY_KEYWORD, - GET_KEYWORD, + CATCH_KEYWORD, CLASS_KEYWORD, CONTINUE_KEYWORD, + DO_KEYWORD, ELSE_KEYWORD, ENUM_KEYWORD, + FALSE_KEYWORD, FINALLY_KEYWORD, FOR_KEYWORD, FUN_KEYWORD, + GET_KEYWORD, IF_KEYWORD, IN_KEYWORD, INLINE_KEYWORD, INTERNAL_KEYWORD, IS_KEYWORD, NULL_KEYWORD, OBJECT_KEYWORD, PRIVATE_KEYWORD, PROTECTED_KEYWORD, PUBLIC_KEYWORD, RETURN_KEYWORD, SET_KEYWORD, SUPER_KEYWORD, CAPITALIZED_THIS_KEYWORD, THIS_KEYWORD, THROW_KEYWORD, - TRUE_KEYWORD, TRY_KEYWORD, - TYPE_KEYWORD, - VARARG_KEYWORD, WHERE_KEYWORD); + TRAIT_KEYWORD, TRUE_KEYWORD, TRY_KEYWORD, + TYPE_KEYWORD, VAL_KEYWORD, VAR_KEYWORD, + VARARG_KEYWORD, WHEN_KEYWORD, WHERE_KEYWORD, WHILE_KEYWORD); registerScopeKeywordsCompletion(InPropertyBodyFilter.class.getName(), new InPropertyBodyFilter(), - ELSE_KEYWORD, FALSE_KEYWORD, - NULL_KEYWORD, THIS_KEYWORD, TRUE_KEYWORD); + ELSE_KEYWORD, FALSE_KEYWORD, IF_KEYWORD, + NULL_KEYWORD, THIS_KEYWORD, TRUE_KEYWORD, WHEN_KEYWORD); registerScopeKeywordsCompletion(InTypeParameterFirstChildFilter.class.getName(), new InTypeParameterFirstChildFilter(), false, IN_KEYWORD, OUT_KEYWORD); - // templates - registerScopeKeywordsCompletion(InWhenFilter.class.getName(), new InWhenFilter(), - WHEN_ENTRY_TEMPLATE); - registerScopeKeywordsCompletion(InTopFilter.class.getName(), new InTopFilter(), - FUN_TEMPLATE, VAL_WITH_TYPE_TEMPLATE, VAL_WITH_GETTER_TEMPLATE, - VAR_WITH_TYPE_TEMPLATE, VAR_WITH_GETTER_AND_SETTER_TEMPLATE, - TRAIT_TEMPLATE, CLASS_TEMPLATE, ENUM_CLASS_TEMPLATE); - registerScopeKeywordsCompletion(InClassBodyFilter.class.getName(), new InClassBodyFilter(), - FUN_TEMPLATE, VAL_WITH_TYPE_TEMPLATE, VAL_WITH_GETTER_TEMPLATE, - VAR_WITH_TYPE_TEMPLATE, VAR_WITH_GETTER_AND_SETTER_TEMPLATE, - TRAIT_TEMPLATE, CLASS_TEMPLATE, CLASS_OBJECT_TEMPLATE, - ENUM_CLASS_TEMPLATE); - registerScopeKeywordsCompletion(InNonClassBlockFilter.class.getName(), new InNonClassBlockFilter(), - IF_TEMPLATE, IF_ELSE_TEMPLATE, IF_ELSE_ONE_LINE_TEMPLATE, - FUN_TEMPLATE, VAL_SIMPLE_TEMPLATE, VAR_SIMPLE_TEMPLATE, - TRAIT_TEMPLATE, CLASS_TEMPLATE, FOR_TEMPLATE, - WHEN_TEMPLATE, WHILE_TEMPLATE, DO_WHILE_TEMPLATE, ENUM_CLASS_TEMPLATE); - registerScopeKeywordsCompletion(InPropertyBodyFilter.class.getName(), new InPropertyBodyFilter(), - IF_ELSE_ONE_LINE_TEMPLATE, WHEN_TEMPLATE); registerScopeKeywordsCompletion(AfterClassInClassBodyFilter.class.getName(), new AfterClassInClassBodyFilter(), false, - CLASS_OBJECT_WITHOUT_CLASS_TEMPLATE); + OBJECT_KEYWORD); } private void registerScopeKeywordsCompletion(String debugName, ElementFilter placeFilter, boolean notIdentifier, String... keywords) { - extend(CompletionType.BASIC, getPlacePattern(placeFilter, notIdentifier), - new KeywordsCompletionProvider(debugName, keywords)); + extend(CompletionType.BASIC, getPlacePattern(placeFilter, notIdentifier), new KeywordsCompletionProvider(debugName, keywords)); } private void registerScopeKeywordsCompletion(String debugName, ElementFilter placeFilter, boolean notIdentifier, JetToken... keywords) { registerScopeKeywordsCompletion(debugName, placeFilter, notIdentifier, convertTokensToStrings(keywords)); } - private void registerScopeKeywordsCompletion(String debugName, ElementFilter placeFilter, String... keywords) { - registerScopeKeywordsCompletion(debugName, placeFilter, true, keywords); - } - private void registerScopeKeywordsCompletion(String debugName, ElementFilter placeFilter, JetToken... keywords) { - registerScopeKeywordsCompletion(debugName, placeFilter, convertTokensToStrings(keywords)); + registerScopeKeywordsCompletion(debugName, placeFilter, true, convertTokensToStrings(keywords)); } private static String[] convertTokensToStrings(JetToken... keywords) { diff --git a/idea/src/org/jetbrains/jet/plugin/completion/handlers/JetTemplateInsertHandler.java b/idea/src/org/jetbrains/jet/plugin/completion/handlers/JetTemplateInsertHandler.java deleted file mode 100644 index 1cabc32cdef..00000000000 --- a/idea/src/org/jetbrains/jet/plugin/completion/handlers/JetTemplateInsertHandler.java +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Copyright 2010-2013 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.jet.plugin.completion.handlers; - -import com.intellij.codeInsight.completion.InsertHandler; -import com.intellij.codeInsight.completion.InsertionContext; -import com.intellij.codeInsight.folding.CodeFoldingManager; -import com.intellij.codeInsight.lookup.LookupElement; -import com.intellij.codeInsight.lookup.LookupElementBuilder; -import com.intellij.openapi.editor.Document; -import com.intellij.openapi.editor.Editor; -import com.intellij.openapi.editor.SelectionModel; -import com.intellij.psi.codeStyle.CodeStyleManager; - -public class JetTemplateInsertHandler implements InsertHandler { - private String myInsertion; - - public JetTemplateInsertHandler(String insertion) { - myInsertion = insertion; - } - - @Override - public void handleInsert(InsertionContext context, LookupElement item) { - Document document = context.getDocument(); - Editor editor = context.getEditor(); - - String insertion = myInsertion; - char currentChar = context.getTailOffset() < document.getTextLength() ? document.getCharsSequence().charAt(context.getTailOffset()) : 0; - if (insertion.endsWith(" ") && context.getCompletionChar() != ' ' && (currentChar == ')' || currentChar == ' ' || currentChar == '\t')) { - insertion = insertion.trim(); - } - - int tailOffset = context.getStartOffset() + insertion.length(); - int caretOffset = insertion.indexOf('|'); - if (caretOffset != -1) { - insertion = insertion.replace("|", ""); - tailOffset = context.getStartOffset() + caretOffset; - } - - document.replaceString(context.getStartOffset(), context.getTailOffset(), insertion); - - context.setTailOffset(tailOffset); - - CodeFoldingManager foldManager = CodeFoldingManager.getInstance(context.getProject()); - foldManager.updateFoldRegions(editor); - - String text = document.getText(); - int firstParamStart = text.indexOf("<#<", context.getStartOffset()); - int firstParamEnd = text.indexOf(">#>", firstParamStart); - - SelectionModel selectionModel = editor.getSelectionModel(); - if (firstParamStart >= 0 && firstParamEnd >= 0 && firstParamStart < context.getTailOffset()) { - selectionModel.setSelection(firstParamStart, firstParamEnd + 2); - } - - if (!insertion.endsWith(" ")) { - CodeStyleManager.getInstance(context.getProject()).reformatText(context.getFile(), context.getStartOffset(), context.getTailOffset()); - } - - if (firstParamStart >= 0 && firstParamEnd >= 0 && selectionModel.hasSelection()) { - editor.getCaretModel().moveToOffset(selectionModel.getSelectionStart()); - } - else { - editor.getCaretModel().moveToOffset(context.getTailOffset()); - } - - if (context.getCompletionChar() == ' ') { - context.setAddCompletionChar(false); - } - } - - public static LookupElementBuilder lookup(String template) { - String presentation = template.replaceAll("<#<(\\w+)>#>", "...").replace("\n", ""); - LookupElementBuilder builder = LookupElementBuilder.create(presentation).setBold(); - return builder.setInsertHandler(new JetTemplateInsertHandler(template)); - } -} diff --git a/idea/testData/completion/keywords/InClassBeforeFun.kt b/idea/testData/completion/keywords/InClassBeforeFun.kt index 663ecb4e725..28e107fae8e 100644 --- a/idea/testData/completion/keywords/InClassBeforeFun.kt +++ b/idea/testData/completion/keywords/InClassBeforeFun.kt @@ -15,17 +15,17 @@ public class Test { // ABSENT: break // ABSENT: by // ABSENT: catch -// EXIST: class ... {...} +// EXIST: class // ABSENT: continue // ABSENT: default // ABSENT: do // ABSENT: else -// EXIST: enum class ... {...} +// EXIST: enum // ABSENT: false // EXIST: final // ABSENT: finally // ABSENT: for -// EXIST: fun ...(...) : ... {...} +// EXIST: fun // EXIST: get // ABSENT: if // ABSENT: import @@ -49,14 +49,12 @@ public class Test { // ABSENT: This // ABSENT: this // ABSENT: throw -// EXIST: trait ... {...} +// EXIST: trait // ABSENT: true // ABSENT: try // EXIST: type -// EXIST: val ... : ... = ... -// EXIST: val ... : ...get() {...} -// EXIST: var ... : ... = ... -// EXIST: var ... : ...get() {...}set(value) {...} +// EXIST: val +// EXIST: var // ABSENT: vararg // ABSENT: when // ABSENT: where diff --git a/idea/testData/completion/keywords/InClassScope.kt b/idea/testData/completion/keywords/InClassScope.kt index cb649863433..b05d22abacb 100644 --- a/idea/testData/completion/keywords/InClassScope.kt +++ b/idea/testData/completion/keywords/InClassScope.kt @@ -10,17 +10,17 @@ class TestClass { // ABSENT: break // ABSENT: by // ABSENT: catch -// EXIST: class ... {...} +// EXIST: class // ABSENT: continue // ABSENT: default // ABSENT: do // ABSENT: else -// EXIST: enum class ... {...} +// EXIST: enum // ABSENT: false // EXIST: final // ABSENT: finally // ABSENT: for -// EXIST: fun ...(...) : ... {...} +// EXIST: fun // EXIST: get // ABSENT: if // ABSENT: import @@ -44,14 +44,12 @@ class TestClass { // ABSENT: This // ABSENT: this // ABSENT: throw -// EXIST: trait ... {...} +// EXIST: trait // ABSENT: true // ABSENT: try // EXIST: type -// EXIST: val ... : ... = ... -// EXIST: val ... : ...get() {...} -// EXIST: var ... : ... = ... -// EXIST: var ... : ...get() {...}set(value) {...} +// EXIST: val +// EXIST: var // ABSENT: vararg // ABSENT: when // ABSENT: where diff --git a/idea/testData/completion/keywords/InFunctionScope.kt b/idea/testData/completion/keywords/InFunctionScope.kt index 344e032031e..3215ced8ebc 100644 --- a/idea/testData/completion/keywords/InFunctionScope.kt +++ b/idea/testData/completion/keywords/InFunctionScope.kt @@ -8,18 +8,18 @@ fun foo() { // EXIST: break // EXIST: by // EXIST: catch -// EXIST: class ... {...} +// EXIST: class // EXIST: continue -// EXIST: do {...} while (...) +// EXIST: do // EXIST: else -// EXIST: enum class ... {...} +// EXIST: enum // EXIST: false // ABSENT: final // EXIST: finally -// EXIST: for (... in ...) {...} -// EXIST: fun ...(...) : ... {...} +// EXIST: for +// EXIST: fun // EXIST: get -// EXIST: if (...) {...} +// EXIST: if // ABSENT: import // EXIST: in // EXIST: inline @@ -40,13 +40,13 @@ fun foo() { // EXIST: This // EXIST: this // EXIST: throw -// EXIST: trait ... {...} +// EXIST: trait // EXIST: true // EXIST: try // EXIST: type -// EXIST: val ... = ... -// EXIST: var ... = ... +// EXIST: val +// EXIST: var // EXIST: vararg -// EXIST: when (...) {... -> ...else -> ...} +// EXIST: when // EXIST: where -// EXIST: while (...) {...} +// EXIST: while diff --git a/idea/testData/completion/keywords/InTopProperty.kt b/idea/testData/completion/keywords/InTopProperty.kt index 14c070edf98..ea8bb7a4cbc 100644 --- a/idea/testData/completion/keywords/InTopProperty.kt +++ b/idea/testData/completion/keywords/InTopProperty.kt @@ -2,7 +2,7 @@ var a : Int = // EXIST: else // EXIST: false -// EXIST: if (...) ... else ... +// EXIST: if // EXIST: null // EXIST: this // EXIST: true \ No newline at end of file diff --git a/idea/testData/completion/keywords/InTopScopeAfterPackage.kt b/idea/testData/completion/keywords/InTopScopeAfterPackage.kt index f923eb9331e..80d8446a904 100644 --- a/idea/testData/completion/keywords/InTopScopeAfterPackage.kt +++ b/idea/testData/completion/keywords/InTopScopeAfterPackage.kt @@ -2,8 +2,8 @@ package Test -// EXIST: enum class ... {...} -// EXIST: trait ... {...} -// EXIST: class ... {...} -// EXIST: fun ...(...) : ... {...} +// EXIST: enum +// EXIST: trait +// EXIST: class +// EXIST: fun diff --git a/idea/testData/completion/keywords/InTypeScope.kt b/idea/testData/completion/keywords/InTypeScope.kt index ea594492ccd..a4a384eeb64 100644 --- a/idea/testData/completion/keywords/InTypeScope.kt +++ b/idea/testData/completion/keywords/InTypeScope.kt @@ -8,18 +8,18 @@ fun foo() { // EXIST: break // EXIST: by // EXIST: catch -// EXIST: class ... {...} +// EXIST: class // EXIST: continue -// EXIST: do {...} while (...) +// EXIST: do // EXIST: else -// EXIST: enum class ... {...} +// EXIST: enum // EXIST: false // ABSENT: final // EXIST: finally -// EXIST: for (... in ...) {...} -// EXIST: fun ...(...) : ... {...} +// EXIST: for +// EXIST: fun // EXIST: get -// EXIST: if (...) {...} +// EXIST: if // ABSENT: import // EXIST: in // EXIST: inline @@ -40,13 +40,13 @@ fun foo() { // EXIST: This // EXIST: this // EXIST: throw -// EXIST: trait ... {...} +// EXIST: trait // EXIST: true // EXIST: try // EXIST: type -// EXIST: val ... = ... -// EXIST: var ... = ... +// EXIST: val +// EXIST: var // EXIST: vararg -// EXIST: when (...) {... -> ...else -> ...} +// EXIST: when // EXIST: where -// EXIST: while (...) {...} +// EXIST: while diff --git a/idea/testData/completion/keywords/TopScope.kt b/idea/testData/completion/keywords/TopScope.kt index c47eb79b35f..5e1f254be14 100644 --- a/idea/testData/completion/keywords/TopScope.kt +++ b/idea/testData/completion/keywords/TopScope.kt @@ -6,17 +6,17 @@ // ABSENT: break // ABSENT: by // ABSENT: catch -// EXIST: class ... {...} +// EXIST: class // ABSENT: continue // ABSENT: default // ABSENT: do // ABSENT: else -// EXIST: enum class ... {...} +// EXIST: enum // ABSENT: false // EXIST: final // ABSENT: finally // ABSENT: for -// EXIST: fun ...(...) : ... {...} +// EXIST: fun // EXIST: get // ABSENT: if // EXIST: import @@ -39,14 +39,12 @@ // ABSENT: This // ABSENT: this // ABSENT: throw -// EXIST: trait ... {...} +// EXIST: trait // ABSENT: true // ABSENT: try // EXIST: type -// EXIST: val ... : ... = ... -// EXIST: val ... : ...get() {...} -// EXIST: var ... : ... = ... -// EXIST: var ... : ...get() {...}set(value) {...} +// EXIST: val +// EXIST: var // ABSENT: vararg // ABSENT: when // ABSENT: where diff --git a/idea/testData/completion/keywords/classObject.kt b/idea/testData/completion/keywords/classObject.kt index e01d361c586..cfaa7effe3e 100644 --- a/idea/testData/completion/keywords/classObject.kt +++ b/idea/testData/completion/keywords/classObject.kt @@ -2,4 +2,4 @@ class Test { class } -// EXIST: object {...} \ No newline at end of file +// EXIST: object \ No newline at end of file diff --git a/idea/testData/completion/weighers/TemplatesAndKeywordsLast.kt b/idea/testData/completion/weighers/KeywordsLast.kt similarity index 53% rename from idea/testData/completion/weighers/TemplatesAndKeywordsLast.kt rename to idea/testData/completion/weighers/KeywordsLast.kt index e707565edb7..65293c6f7fd 100644 --- a/idea/testData/completion/weighers/TemplatesAndKeywordsLast.kt +++ b/idea/testData/completion/weighers/KeywordsLast.kt @@ -3,4 +3,4 @@ fun main(variables: Array) { va } -// ORDER: values, variables, val ... = ..., var ... = ..., vararg \ No newline at end of file +// ORDER: values, val, variables, var, vararg \ No newline at end of file diff --git a/idea/testData/completion/weighers/ParametersBeforeKeywords.kt b/idea/testData/completion/weighers/ParametersBeforeKeywords.kt index e6850e53c6d..6b833b4be2d 100644 --- a/idea/testData/completion/weighers/ParametersBeforeKeywords.kt +++ b/idea/testData/completion/weighers/ParametersBeforeKeywords.kt @@ -2,4 +2,4 @@ fun bar(fop: Int) { fo } -// ORDER: fop, for (... in ...) {...} \ No newline at end of file +// ORDER: fop, for \ No newline at end of file diff --git a/idea/tests/org/jetbrains/jet/completion/weighers/CompletionWeigherTestGenerated.java b/idea/tests/org/jetbrains/jet/completion/weighers/CompletionWeigherTestGenerated.java index 745a33e1049..0b0a9b6eb22 100644 --- a/idea/tests/org/jetbrains/jet/completion/weighers/CompletionWeigherTestGenerated.java +++ b/idea/tests/org/jetbrains/jet/completion/weighers/CompletionWeigherTestGenerated.java @@ -41,6 +41,11 @@ public class CompletionWeigherTestGenerated extends AbstractCompletionWeigherTes doTest("idea/testData/completion/weighers/DeprecatedFun.kt"); } + @TestMetadata("KeywordsLast.kt") + public void testKeywordsLast() throws Exception { + doTest("idea/testData/completion/weighers/KeywordsLast.kt"); + } + @TestMetadata("LocalFileBeforeImported.kt") public void testLocalFileBeforeImported() throws Exception { doTest("idea/testData/completion/weighers/LocalFileBeforeImported.kt"); @@ -71,9 +76,4 @@ public class CompletionWeigherTestGenerated extends AbstractCompletionWeigherTes doTest("idea/testData/completion/weighers/PropertiesBeforeKeywords.kt"); } - @TestMetadata("TemplatesAndKeywordsLast.kt") - public void testTemplatesAndKeywordsLast() throws Exception { - doTest("idea/testData/completion/weighers/TemplatesAndKeywordsLast.kt"); - } - }