diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/OperatorReferenceSearcher.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/OperatorReferenceSearcher.kt index 27913fc63ef..cad69d63cd4 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/OperatorReferenceSearcher.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/OperatorReferenceSearcher.kt @@ -177,6 +177,9 @@ abstract class OperatorReferenceSearcher( name == OperatorNameConventions.EQUALS -> return BinaryOperatorReferenceSearcher(declaration, listOf(KtTokens.EQEQ, KtTokens.EXCLEQ), searchScope, consumer, optimizer, options) + name == OperatorNameConventions.COMPARE_TO -> + return BinaryOperatorReferenceSearcher(declaration, listOf(KtTokens.LT, KtTokens.GT, KtTokens.LTEQ, KtTokens.GTEQ), searchScope, consumer, optimizer, options) + else -> return null } diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/conventions.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/conventions.kt index 42c8c4a65ce..639e4f41daa 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/conventions.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/conventions.kt @@ -19,7 +19,6 @@ package org.jetbrains.kotlin.idea.search.usagesSearch import com.google.common.collect.ImmutableSet import org.jetbrains.kotlin.idea.references.KtForLoopInReference import org.jetbrains.kotlin.idea.references.KtPropertyDelegationMethodsReference -import org.jetbrains.kotlin.idea.references.KtSimpleNameReference import org.jetbrains.kotlin.lexer.KtToken import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.name.Name @@ -43,11 +42,8 @@ val DELEGATE_ACCESSOR_NAMES = setOf(Name.identifier("getValue"), Name.identifier val IN_OPERATIONS_TO_SEARCH = setOf(KtTokens.IN_KEYWORD) -val COMPARISON_OPERATIONS_TO_SEARCH = setOf(KtTokens.LT, KtTokens.GT) - fun Name.getOperationSymbolsToSearch(): Pair, Class<*>>? { when (this) { - OperatorNameConventions.COMPARE_TO -> return COMPARISON_OPERATIONS_TO_SEARCH to KtSimpleNameReference::class.java OperatorNameConventions.ITERATOR -> return IN_OPERATIONS_TO_SEARCH to KtForLoopInReference::class.java in DELEGATE_ACCESSOR_NAMES -> return setOf(KtTokens.BY_KEYWORD) to KtPropertyDelegationMethodsReference::class.java DelegatedPropertyResolver.PROPERTY_DELEGATED_FUNCTION_NAME -> return setOf(KtTokens.BY_KEYWORD) to KtPropertyDelegationMethodsReference::class.java diff --git a/idea/testData/findUsages/kotlin/conventions/compareTo.log b/idea/testData/findUsages/kotlin/conventions/compareTo.log new file mode 100644 index 00000000000..a53f9cd0299 --- /dev/null +++ b/idea/testData/findUsages/kotlin/conventions/compareTo.log @@ -0,0 +1,12 @@ +Resolved A(0) < 1 +Resolved A(0) < A(1) +Resolved A(0) <= 1 +Resolved A(0) <= A(1) +Resolved A(0) > 1 +Resolved A(0) > A(1) +Resolved A(0) >= 1 +Resolved A(0) >= A(1) +Searched references to A +Searched references to parameter other of A.compareTo(other: A) in non-Java files +Used plain search of A.compareTo(other: A) in LocalSearchScope: + CLASS:A