Drop QualifierReceiver::resultingDescriptor. Use REFERENCE_TARGET.
This commit is contained in:
+2
-3
@@ -74,9 +74,8 @@ private fun resolveAndRecordReferenceTarget(
|
||||
selector: DeclarationDescriptor?,
|
||||
symbolUsageValidator: SymbolUsageValidator
|
||||
) {
|
||||
// TODO get rid of QualifierReceiver::resultingDescriptor. REFERENCE_TARGET should be enough.
|
||||
qualifier.resultingDescriptor = resolveReferenceTarget(qualifier, context, selector, symbolUsageValidator)
|
||||
context.trace.record(BindingContext.REFERENCE_TARGET, qualifier.referenceExpression, qualifier.resultingDescriptor)
|
||||
val resultingDescriptor = resolveReferenceTarget(qualifier, context, selector, symbolUsageValidator)
|
||||
context.trace.record(BindingContext.REFERENCE_TARGET, qualifier.referenceExpression, resultingDescriptor)
|
||||
}
|
||||
|
||||
private fun resolveReferenceTarget(
|
||||
|
||||
@@ -44,26 +44,23 @@ public interface Qualifier: Receiver {
|
||||
|
||||
public val expression: KtExpression
|
||||
|
||||
public val referenceExpression: KtSimpleNameExpression
|
||||
|
||||
public val name: Name
|
||||
get() = descriptor.name
|
||||
|
||||
public val descriptor: DeclarationDescriptor
|
||||
|
||||
// package, classifier or companion object descriptor
|
||||
public val resultingDescriptor: DeclarationDescriptor
|
||||
|
||||
public val scope: MemberScope
|
||||
}
|
||||
|
||||
abstract class QualifierReceiver(
|
||||
val referenceExpression: KtSimpleNameExpression
|
||||
override val referenceExpression: KtSimpleNameExpression
|
||||
) : Qualifier {
|
||||
|
||||
override val expression: KtExpression
|
||||
get() = referenceExpression.getTopmostParentQualifiedExpressionForSelector() ?: referenceExpression
|
||||
|
||||
override var resultingDescriptor: DeclarationDescriptor by Delegates.notNull()
|
||||
|
||||
abstract fun getNestedClassesAndPackageMembersScope(): MemberScope
|
||||
|
||||
override fun exists() = true
|
||||
|
||||
Reference in New Issue
Block a user