diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/kdoc/KDocReference.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/kdoc/KDocReference.kt index 1f940a0c5cf..8631b4f040e 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/kdoc/KDocReference.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/kdoc/KDocReference.kt @@ -102,7 +102,7 @@ fun getParamDescriptors(fromDescriptor: DeclarationDescriptor): List - return fromDescriptor.valueParameters + return fromDescriptor.valueParameters + fromDescriptor.typeParameters is ClassifierDescriptor -> { val typeParams = fromDescriptor.typeConstructor.parameters if (fromDescriptor is ClassDescriptor) { diff --git a/idea/testData/editor/quickDoc/OnMethodUsageWithTypeParameter.kt b/idea/testData/editor/quickDoc/OnMethodUsageWithTypeParameter.kt new file mode 100644 index 00000000000..5e378c12200 --- /dev/null +++ b/idea/testData/editor/quickDoc/OnMethodUsageWithTypeParameter.kt @@ -0,0 +1,17 @@ +/** +Some documentation + + * @param T the type parameter + * @param a Some int + * @param b String + */ +fun testMethod(a: Int, b: String) { + +} + +fun test() { + testMethod(1, "value") +} + +//INFO: public fun <T> testMethod(a: Int, b: String): Unit defined in root package

Some documentation

+//INFO:
Parameters:
T - the type parameter
a - Some int
b - String
diff --git a/idea/testData/kdoc/rename/TypeParamReference.kt b/idea/testData/kdoc/rename/TypeParamReference.kt new file mode 100644 index 00000000000..60e5144ffb6 --- /dev/null +++ b/idea/testData/kdoc/rename/TypeParamReference.kt @@ -0,0 +1,4 @@ +/** + * @param T this is a type parameter + */ +fun <T> f(s: String) { } diff --git a/idea/testData/kdoc/rename/TypeParamReference.kt.after b/idea/testData/kdoc/rename/TypeParamReference.kt.after new file mode 100644 index 00000000000..0baa60addd6 --- /dev/null +++ b/idea/testData/kdoc/rename/TypeParamReference.kt.after @@ -0,0 +1,4 @@ +/** + * @param R this is a type parameter + */ +fun <R> f(s: String) { } diff --git a/idea/tests/org/jetbrains/kotlin/idea/editor/quickDoc/QuickDocProviderTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/editor/quickDoc/QuickDocProviderTestGenerated.java index b3428484142..29f800b0557 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/editor/quickDoc/QuickDocProviderTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/editor/quickDoc/QuickDocProviderTestGenerated.java @@ -155,6 +155,12 @@ public class QuickDocProviderTestGenerated extends AbstractQuickDocProviderTest doTest(fileName); } + @TestMetadata("OnMethodUsageWithTypeParameter.kt") + public void testOnMethodUsageWithTypeParameter() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/editor/quickDoc/OnMethodUsageWithTypeParameter.kt"); + doTest(fileName); + } + @TestMetadata("TopLevelMethodFromJava.java") public void testTopLevelMethodFromJava() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("idea/testData/editor/quickDoc/TopLevelMethodFromJava.java"); diff --git a/idea/tests/org/jetbrains/kotlin/idea/kdoc/KdocRenameTest.java b/idea/tests/org/jetbrains/kotlin/idea/kdoc/KdocRenameTest.java index a7f62c4e114..469cab6d7bd 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/kdoc/KdocRenameTest.java +++ b/idea/tests/org/jetbrains/kotlin/idea/kdoc/KdocRenameTest.java @@ -36,6 +36,10 @@ public class KdocRenameTest extends LightCodeInsightTestCase { doTest("bar"); } + public void testTypeParamReference() throws Exception { + doTest("R"); + } + public void testCodeReference() throws Exception { doTest("xyzzy"); }