Introduce Receiver as a common superclass of QualifierReceiver and ReceiverValue.

QualifierRecevier is no longer a subclass of ReceiverValue.
This commit is contained in:
Dmitry Petrov
2015-10-30 13:46:32 +03:00
parent 2ff0b13808
commit 16dcc0b288
42 changed files with 164 additions and 105 deletions
@@ -32,6 +32,7 @@ import org.jetbrains.kotlin.resolve.calls.model.ResolvedCall
import org.jetbrains.kotlin.resolve.descriptorUtil.getSuperClassOrAny
import org.jetbrains.kotlin.resolve.jvm.diagnostics.JvmDeclarationOrigin
import org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor
import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue
import org.jetbrains.kotlin.resolve.source.KotlinSourceElement
import org.jetbrains.kotlin.types.lowerIfFlexible
import org.jetbrains.org.objectweb.asm.Label
@@ -228,7 +229,7 @@ public class AndroidExpressionCodegenExtension : ExpressionCodegenExtension {
}
private fun ResolvedCall<*>.getReceiverDeclarationDescriptor(): ClassifierDescriptor? {
return extensionReceiver.type.constructor.declarationDescriptor
return (extensionReceiver as ReceiverValue).type.constructor.declarationDescriptor
}
override fun generateClassSyntheticParts(