Minor. Extract createLookupLocation for call
This commit is contained in:
@@ -18,16 +18,14 @@ package org.jetbrains.kotlin.resolve.calls.tasks
|
||||
|
||||
import com.google.common.collect.Lists
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.incremental.KotlinLookupLocation
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.progress.ProgressIndicatorAndCompilationCanceledStatus
|
||||
import org.jetbrains.kotlin.psi.Call
|
||||
import org.jetbrains.kotlin.psi.KtFile
|
||||
import org.jetbrains.kotlin.psi.doNotAnalyze
|
||||
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||
import org.jetbrains.kotlin.resolve.calls.callResolverUtil.getUnaryPlusOrMinusOperatorFunctionName
|
||||
import org.jetbrains.kotlin.resolve.calls.callResolverUtil.isConventionCall
|
||||
import org.jetbrains.kotlin.resolve.calls.callResolverUtil.isOrOverridesSynthesized
|
||||
import org.jetbrains.kotlin.resolve.calls.callUtil.createLookupLocation
|
||||
import org.jetbrains.kotlin.resolve.calls.context.BasicCallResolutionContext
|
||||
import org.jetbrains.kotlin.resolve.calls.context.ResolutionContext
|
||||
import org.jetbrains.kotlin.resolve.calls.smartcasts.SmartCastManager
|
||||
@@ -336,13 +334,7 @@ public class TaskPrioritizer(
|
||||
}
|
||||
}
|
||||
|
||||
private fun createLookupLocation(c: TaskPrioritizerContext<*, *>) = KotlinLookupLocation(c.context.call.run {
|
||||
calleeExpression?.let {
|
||||
// Can't use getContainingJetFile() because we can get from IDE an element with JavaDummyHolder as containing file
|
||||
if ((it.containingFile as? KtFile)?.doNotAnalyze == null) it else null
|
||||
}
|
||||
?: callElement
|
||||
})
|
||||
private fun createLookupLocation(c: TaskPrioritizerContext<*, *>) = c.context.call.createLookupLocation()
|
||||
|
||||
private fun <D : CallableDescriptor, F : D> addCandidatesForInvoke(explicitReceiver: ReceiverWithTypes, c: TaskPrioritizerContext<D, F>) {
|
||||
val implicitReceivers = c.scope.getImplicitReceiversHierarchy().map { it.value }
|
||||
|
||||
@@ -20,6 +20,7 @@ import com.intellij.psi.util.PsiTreeUtil
|
||||
import org.jetbrains.kotlin.descriptors.CallableDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor
|
||||
import org.jetbrains.kotlin.incremental.KotlinLookupLocation
|
||||
import org.jetbrains.kotlin.lexer.KtTokens
|
||||
import org.jetbrains.kotlin.psi.*
|
||||
import org.jetbrains.kotlin.psi.psiUtil.getTextWithLocation
|
||||
@@ -194,4 +195,12 @@ public fun Call.isSafeCall(): Boolean {
|
||||
return isExplicitSafeCall()
|
||||
}
|
||||
|
||||
public fun Call.isExplicitSafeCall(): Boolean = getCallOperationNode()?.getElementType() == KtTokens.SAFE_ACCESS
|
||||
public fun Call.isExplicitSafeCall(): Boolean = getCallOperationNode()?.getElementType() == KtTokens.SAFE_ACCESS
|
||||
|
||||
public fun Call.createLookupLocation() = KotlinLookupLocation(run {
|
||||
calleeExpression?.let {
|
||||
// Can't use getContainingJetFile() because we can get from IDE an element with JavaDummyHolder as containing file
|
||||
if ((it.containingFile as? KtFile)?.doNotAnalyze == null) it else null
|
||||
}
|
||||
?: callElement
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user