Complete this/super before delegation call

This commit is contained in:
Denis Zharkov
2015-02-13 13:09:25 +03:00
parent 50c8c6f68b
commit 9be45af267
3 changed files with 15 additions and 0 deletions
@@ -310,6 +310,10 @@ class BasicCompletionSession(configuration: CompletionSessionConfiguration,
if (expression != null) {
collector.addElements(thisExpressionItems(bindingContext!!, expression, prefix).map { it.factory() })
}
else {
// for completion in secondary constructor delegation call
collector.addElement(lookupElement)
}
}
// if "return" is parsed correctly in the current context - insert it and all return@xxx items
@@ -0,0 +1,5 @@
class A(x: Int) {
constructor(): <caret>
}
// EXIST: this, super
@@ -78,6 +78,12 @@ public class KeywordCompletionTestGenerated extends AbstractKeywordCompletionTes
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/completion/keywords"), Pattern.compile("^(.+)\\.kt$"), false);
}
@TestMetadata("BeforeDelegationCall.kt")
public void testBeforeDelegationCall() throws Exception {
String fileName = JetTestUtils.navigationMetadata("idea/testData/completion/keywords/BeforeDelegationCall.kt");
doTest(fileName);
}
@TestMetadata("BreakContinue.kt")
public void testBreakContinue() throws Exception {
String fileName = JetTestUtils.navigationMetadata("idea/testData/completion/keywords/BreakContinue.kt");