Find Usages: Add special type for usages inside of type aliases

#KT-13955 Fixed
This commit is contained in:
Alexey Sedunov
2016-09-20 16:49:22 +03:00
parent 3adbe5515e
commit 698660b9c6
6 changed files with 19 additions and 0 deletions
+1
View File
@@ -19,6 +19,7 @@
- [`KT-13385`](https://youtrack.jetbrains.com/issue/KT-13385) Move: Quote package name (if necessary) when moving declarations to new file
- [`KT-13395`](https://youtrack.jetbrains.com/issue/KT-13395) Introduce Property: Fix duplicate count in popup window
- [`KT-13611`](https://youtrack.jetbrains.com/issue/KT-13611) Go to Class: Fix presentation of type aliases
- [`KT-13955`](https://youtrack.jetbrains.com/issue/KT-13955) Find Usages: Add special type for usages inside of type aliases
## 1.1-M01 (EAP-1)
@@ -112,6 +112,9 @@ object UsageTypeUtils {
refExpr.getParentOfTypeAndBranch<KtSuperExpression>(){ superTypeQualifier } != null ->
SUPER_TYPE_QUALIFIER
refExpr.getParentOfTypeAndBranch<KtTypeAlias> { getTypeReference() } != null ->
TYPE_ALIAS
else -> null
}
}
@@ -217,6 +220,7 @@ enum class UsageTypeEnum {
COMPANION_OBJECT_ACCESS,
EXTENSION_RECEIVER_TYPE,
SUPER_TYPE_QUALIFIER,
TYPE_ALIAS,
FUNCTION_CALL,
IMPLICIT_GET,
@@ -46,6 +46,7 @@ object KotlinUsageTypeProvider : UsageTypeProviderEx {
COMPANION_OBJECT_ACCESS -> KotlinUsageTypes.COMPANION_OBJECT_ACCESS
EXTENSION_RECEIVER_TYPE -> KotlinUsageTypes.EXTENSION_RECEIVER_TYPE
SUPER_TYPE_QUALIFIER -> KotlinUsageTypes.SUPER_TYPE_QUALIFIER
TYPE_ALIAS -> KotlinUsageTypes.TYPE_ALIAS
FUNCTION_CALL -> KotlinUsageTypes.FUNCTION_CALL
IMPLICIT_GET -> KotlinUsageTypes.IMPLICIT_GET
@@ -89,6 +90,7 @@ object KotlinUsageTypes {
val COMPANION_OBJECT_ACCESS = UsageType(KotlinBundle.message("usageType.companion.object"))
val EXTENSION_RECEIVER_TYPE = UsageType(KotlinBundle.message("usageType.extension.receiver.type"))
val SUPER_TYPE_QUALIFIER = UsageType(KotlinBundle.message("usageType.super.type.qualifier"))
val TYPE_ALIAS = UsageType("Type alias")
// functions
val FUNCTION_CALL = UsageType(KotlinBundle.message("usageType.function.call"))
@@ -0,0 +1,5 @@
// PSI_ELEMENT: org.jetbrains.kotlin.psi.KtClass
// OPTIONS: usages
class <caret>A<T>
typealias B = A<Int>
@@ -0,0 +1 @@
Type alias 5 typealias B = A<Int>
@@ -623,6 +623,12 @@ public class FindUsagesTestGenerated extends AbstractFindUsagesTest {
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/findUsages/kotlin/findClassUsages/primaryConstructorWithDefaultParams.0.kt");
doTest(fileName);
}
@TestMetadata("usageInTypeAlias.0.kt")
public void testUsageInTypeAlias() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/findUsages/kotlin/findClassUsages/usageInTypeAlias.0.kt");
doTest(fileName);
}
}
@TestMetadata("idea/testData/findUsages/kotlin/findFunctionUsages")