IR: remove WrappedDescriptors altogether

This commit is contained in:
Georgy Bronnikov
2020-12-08 20:21:45 +03:00
parent e9f45e23f2
commit c5961da780
35 changed files with 151 additions and 1449 deletions
@@ -22,15 +22,18 @@ import org.jetbrains.kotlin.ir.declarations.IrFactory
import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin
import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent
import org.jetbrains.kotlin.ir.declarations.IrErrorDeclaration
import org.jetbrains.kotlin.ir.descriptors.toIrBasedDescriptor
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
import org.jetbrains.kotlin.ir.symbols.IrSymbol
@OptIn(ObsoleteDescriptorBasedAPI::class)
class IrErrorDeclarationImpl(
override val startOffset: Int,
override val endOffset: Int,
override val descriptor: DeclarationDescriptor
private val _descriptor: DeclarationDescriptor?
) : IrErrorDeclaration() {
override val descriptor: DeclarationDescriptor
get() = _descriptor ?: this.toIrBasedDescriptor()
override var origin: IrDeclarationOrigin = IrDeclarationOrigin.DEFINED
override val factory: IrFactory
@@ -83,7 +83,7 @@ object IrFactoryImpl : IrFactory {
override fun createErrorDeclaration(
startOffset: Int,
endOffset: Int,
descriptor: DeclarationDescriptor,
descriptor: DeclarationDescriptor?,
): IrErrorDeclaration =
IrErrorDeclarationImpl(startOffset, endOffset, descriptor)
@@ -10,7 +10,6 @@ import org.jetbrains.kotlin.descriptors.FunctionDescriptor
import org.jetbrains.kotlin.descriptors.Modality
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
import org.jetbrains.kotlin.ir.declarations.*
import org.jetbrains.kotlin.ir.descriptors.WrappedSimpleFunctionDescriptor
import org.jetbrains.kotlin.ir.descriptors.toIrBasedDescriptor
import org.jetbrains.kotlin.ir.expressions.IrBody
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
@@ -138,7 +137,6 @@ class IrFakeOverrideFunctionImpl(
assert(_symbol == null) { "$this already has symbol _symbol" }
_symbol = symbol
symbol.bind(this)
(symbol.descriptor as? WrappedSimpleFunctionDescriptor)?.bind(this)
return this
}
}
@@ -21,7 +21,6 @@ import org.jetbrains.kotlin.descriptors.PropertyDescriptor
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
import org.jetbrains.kotlin.ir.declarations.*
import org.jetbrains.kotlin.ir.descriptors.WrappedPropertyDescriptor
import org.jetbrains.kotlin.ir.descriptors.toIrBasedDescriptor
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
import org.jetbrains.kotlin.ir.symbols.IrPropertySymbol
@@ -122,7 +121,6 @@ class IrFakeOverridePropertyImpl(
assert(_symbol == null) { "$this already has symbol _symbol" }
_symbol = symbol
symbol.bind(this)
(symbol.descriptor as? WrappedPropertyDescriptor)?.bind(this)
return this
}
}