Check that injection with annotation on parameter doesn't trigger not-stubbed psi
This commit is contained in:
@@ -39,6 +39,12 @@ public class KtParameterList extends KtElementImplStub<KotlinPlaceHolderStub<KtP
|
||||
return visitor.visitParameterList(this, data);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PsiElement getParent() {
|
||||
KotlinPlaceHolderStub<KtParameterList> stub = getStub();
|
||||
return stub != null ? stub.getParentStub().getPsi() : super.getParent();
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public List<KtParameter> getParameters() {
|
||||
return getStubOrPsiChildrenAsList(KtStubElementTypes.VALUE_PARAMETER);
|
||||
@@ -49,11 +55,6 @@ public class KtParameterList extends KtElementImplStub<KotlinPlaceHolderStub<KtP
|
||||
return EditCommaSeparatedListHelper.INSTANCE.addItem(this, getParameters(), parameter);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public KtParameter addParameterAfter(@NotNull KtParameter parameter, @Nullable KtParameter anchor) {
|
||||
return EditCommaSeparatedListHelper.INSTANCE.addItemAfter(this, getParameters(), parameter, anchor);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public KtParameter addParameterBefore(@NotNull KtParameter parameter, @Nullable KtParameter anchor) {
|
||||
return EditCommaSeparatedListHelper.INSTANCE.addItemBefore(this, getParameters(), parameter, anchor);
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
package annotated.parameter
|
||||
|
||||
import util.funWithAnnotatedParameter
|
||||
|
||||
fun foo() {
|
||||
val t = "literal"
|
||||
funWithAnnotatedParameter(t)
|
||||
}
|
||||
@@ -46,4 +46,9 @@ fun funWithVararg(vararg i: Int): IntArray {
|
||||
|
||||
fun <T, G> funWithWhere(a: G, b: T) where T: Collection<G> {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
annotation class TempAnnotation
|
||||
fun funWithAnnotatedParameter(@TempAnnotation param: String) {
|
||||
|
||||
}
|
||||
|
||||
@@ -35,6 +35,12 @@ public class MultiFileHighlightingTestGenerated extends AbstractMultiFileHighlig
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/multiFileHighlighting"), Pattern.compile("^(.+)\\.kt$"), false);
|
||||
}
|
||||
|
||||
@TestMetadata("annotatedParameter.kt")
|
||||
public void testAnnotatedParameter() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/multiFileHighlighting/annotatedParameter.kt");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("copyResolveBeforeParams.kt")
|
||||
public void testCopyResolveBeforeParams() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/multiFileHighlighting/copyResolveBeforeParams.kt");
|
||||
|
||||
Reference in New Issue
Block a user