diff --git a/idea/src/org/jetbrains/jet/plugin/findUsages/JetUsageTypeProvider.kt b/idea/src/org/jetbrains/jet/plugin/findUsages/JetUsageTypeProvider.kt index b37be1d6641..a012246bdc4 100644 --- a/idea/src/org/jetbrains/jet/plugin/findUsages/JetUsageTypeProvider.kt +++ b/idea/src/org/jetbrains/jet/plugin/findUsages/JetUsageTypeProvider.kt @@ -32,7 +32,7 @@ import org.jetbrains.jet.lexer.JetTokens import org.jetbrains.jet.plugin.project.AnalyzerFacadeWithCache import org.jetbrains.jet.plugin.JetBundle -public class JetUsageTypeProvider() : UsageTypeProviderEx { +public object JetUsageTypeProvider : UsageTypeProviderEx { public override fun getUsageType(element: PsiElement?): UsageType? { return getUsageType(element, UsageTarget.EMPTY_ARRAY) } @@ -118,30 +118,27 @@ public class JetUsageTypeProvider() : UsageTypeProviderEx { val dotQualifiedExpression = element.getParentByType(javaClass()) - return if (dotQualifiedExpression != null) { + if (dotQualifiedExpression != null) { val parent = dotQualifiedExpression.getParent() when { dotQualifiedExpression.getReceiverExpression().isAncestor(element) -> - JetUsageTypes.RECEIVER + return JetUsageTypes.RECEIVER parent is JetDotQualifiedExpression && parent.getReceiverExpression().isAncestor(element) -> - JetUsageTypes.RECEIVER - - else -> JetUsageTypes.SELECTOR + return JetUsageTypes.RECEIVER } } - else { - when { - element.getParentByTypeAndPredicate( - javaClass(), false, { JetPsiUtil.isAssignment(it) } - )?.getLeft().isAncestor(element) -> - UsageType.WRITE - element.getParentByType(javaClass()) != null -> - UsageType.READ + return when { + element.getParentByTypeAndPredicate( + javaClass(), false, { JetPsiUtil.isAssignment(it) } + )?.getLeft().isAncestor(element) -> + UsageType.WRITE - else -> null - } + element.getParentByType(javaClass()) != null -> + UsageType.READ + + else -> null } } @@ -207,7 +204,6 @@ object JetUsageTypes { // values val RECEIVER = UsageType(JetBundle.message("usageType.receiver")) - val SELECTOR = UsageType(JetBundle.message("usageType.selector")) val DELEGATE = UsageType(JetBundle.message("usageType.delegate")) // common usage types diff --git a/idea/testData/findUsages/findClassUsages/kotlinClassPropertyUsages1.results.txt b/idea/testData/findUsages/findClassUsages/kotlinClassPropertyUsages1.results.txt index 82ab56afd0b..acf261bdc13 100644 --- a/idea/testData/findUsages/findClassUsages/kotlinClassPropertyUsages1.results.txt +++ b/idea/testData/findUsages/findClassUsages/kotlinClassPropertyUsages1.results.txt @@ -1,3 +1,3 @@ -Selector (10: 22) println("${x.a} ${x.b}") -Selector (10: 29) println("${x.a} ${x.b}") -Selector (11: 11) x.b = 12 \ No newline at end of file +Value read (10: 22) println("${x.a} ${x.b}") +Value read (10: 29) println("${x.a} ${x.b}") +Value write (11: 11) x.b = 12 \ No newline at end of file diff --git a/idea/testData/findUsages/findClassUsages/kotlinClassPropertyUsages2.results.txt b/idea/testData/findUsages/findClassUsages/kotlinClassPropertyUsages2.results.txt index aba3c037327..7c5d6c62d1f 100644 --- a/idea/testData/findUsages/findClassUsages/kotlinClassPropertyUsages2.results.txt +++ b/idea/testData/findUsages/findClassUsages/kotlinClassPropertyUsages2.results.txt @@ -1,3 +1,3 @@ -Selector (4: 22) println("${a.a} ${a.b}") -Selector (4: 29) println("${a.a} ${a.b}") -Selector (5: 11) a.b = 12 \ No newline at end of file +Value read (4: 22) println("${a.a} ${a.b}") +Value read (4: 29) println("${a.a} ${a.b}") +Value write (5: 11) a.b = 12 diff --git a/idea/testData/findUsages/findObjectUsages/kotlinPrivateObjectUsages.results.txt b/idea/testData/findUsages/findObjectUsages/kotlinPrivateObjectUsages.results.txt index 7b40c012464..44c32570375 100644 --- a/idea/testData/findUsages/findObjectUsages/kotlinPrivateObjectUsages.results.txt +++ b/idea/testData/findUsages/findObjectUsages/kotlinPrivateObjectUsages.results.txt @@ -1,3 +1,3 @@ -Selector (5: 26) println(Server().Foo) Value read (10: 33) open fun processRequest() = Foo Value read (14: 37) override fun processRequest() = Foo +Value read (5: 26) println(Server().Foo) diff --git a/idea/testData/findUsages/findPropertyUsages/kotlinPrivatePropertyUsages.results.txt b/idea/testData/findUsages/findPropertyUsages/kotlinPrivatePropertyUsages.results.txt index b5573c54296..7185df80296 100644 --- a/idea/testData/findUsages/findPropertyUsages/kotlinPrivatePropertyUsages.results.txt +++ b/idea/testData/findUsages/findPropertyUsages/kotlinPrivatePropertyUsages.results.txt @@ -1,3 +1,3 @@ -Selector (5: 26) println(Server().foo) Value read (12: 45) override fun processRequest() = "foo" + foo +Value read (5: 26) println(Server().foo) Value read (8: 33) open fun processRequest() = foo diff --git a/idea/testData/findUsages/findPropertyUsages/kotlinTopLevelPropertyUsages.results.txt b/idea/testData/findUsages/findPropertyUsages/kotlinTopLevelPropertyUsages.results.txt index 576e93a0b63..d267ff5610a 100644 --- a/idea/testData/findUsages/findPropertyUsages/kotlinTopLevelPropertyUsages.results.txt +++ b/idea/testData/findUsages/findPropertyUsages/kotlinTopLevelPropertyUsages.results.txt @@ -1,6 +1,6 @@ Import directive (3: 15) import server.foo Receiver (8: 35) println("length: ${server.foo.length()}") -Selector (7: 33) println("foo = ${server.foo}") Unclassified usage (7: 53) System.out.println("foo = " + ServerPackage.getFoo()); Unclassified usage (8: 55) System.out.println("length: " + ServerPackage.getFoo().length()); Unclassified usage (9: 23) ServerPackage.setFoo(""); +Value read (7: 33) println("foo = ${server.foo}")