Fix completing members for receivers shadowed by DslMarker
#KT-20396 Fixed
This commit is contained in:
@@ -303,15 +303,14 @@ internal class ImportFix(expression: KtSimpleNameExpression) : OrdinaryImportFix
|
||||
indicesHelper.getKotlinEnumsByName(name).filterTo(result, filterByCallType)
|
||||
|
||||
val resolutionFacade = element.getResolutionFacade()
|
||||
var actualReceiverTypes = callTypeAndReceiver
|
||||
.receiverTypesWithIndex(bindingContext, element,
|
||||
resolutionFacade.moduleDescriptor, resolutionFacade,
|
||||
stableSmartCastsOnly = false,
|
||||
withImplicitReceiversWhenExplicitPresent = true).orEmpty()
|
||||
val actualReceiverTypes = callTypeAndReceiver
|
||||
.receiverTypesWithIndex(
|
||||
bindingContext, element,
|
||||
resolutionFacade.moduleDescriptor, resolutionFacade,
|
||||
stableSmartCastsOnly = false,
|
||||
withImplicitReceiversWhenExplicitPresent = true
|
||||
).orEmpty()
|
||||
|
||||
if (element.languageVersionSettings.supportsFeature(LanguageFeature.DslMarkersSupport)) {
|
||||
actualReceiverTypes -= actualReceiverTypes.shadowedByDslMarkers()
|
||||
}
|
||||
|
||||
val explicitReceiverTypes = actualReceiverTypes.filterNot { it.implicit }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user