Minor. Code clean
This commit is contained in:
+1
-1
@@ -12,7 +12,7 @@ import org.jetbrains.kotlin.ir.symbols.IrConstructorSymbol
|
||||
|
||||
interface DescriptorsFactory {
|
||||
fun getFieldDescriptorForEnumEntry(enumEntryDescriptor: ClassDescriptor): PropertyDescriptor
|
||||
fun getOuterThisFieldDescriptor(classDescriptor: ClassDescriptor): PropertyDescriptor
|
||||
fun getOuterThisFieldDescriptor(innerClassDescriptor: ClassDescriptor): PropertyDescriptor
|
||||
fun getInnerClassConstructorWithOuterThisParameter(innerClassConstructor: ClassConstructorDescriptor): IrConstructorSymbol
|
||||
fun getFieldDescriptorForObjectInstance(objectDescriptor: ClassDescriptor): PropertyDescriptor
|
||||
}
|
||||
+2
-1
@@ -50,7 +50,8 @@ private class KCallableNamePropertyTransformer(val lower: KCallableNamePropertyL
|
||||
|
||||
//TODO rewrite checking
|
||||
val directMember = DescriptorUtils.getDirectMember(expression.descriptor)
|
||||
if (!((directMember.containingDeclaration as? ClassDescriptor)?.defaultType?.isKFunctionType ?: false)) return expression
|
||||
val classDescriptor = directMember.containingDeclaration as? ClassDescriptor ?: return expression
|
||||
if (!classDescriptor.defaultType.isKFunctionType) return expression
|
||||
if (directMember.name.asString() != "name") return expression
|
||||
|
||||
val receiver = callableReference.dispatchReceiver ?: callableReference.extensionReceiver
|
||||
|
||||
+1
-1
@@ -48,7 +48,7 @@ class LateinitLowering(
|
||||
|
||||
private fun transformGetter(backingFieldSymbol: IrFieldSymbol, getter: IrFunction) {
|
||||
val type = backingFieldSymbol.descriptor.type
|
||||
assert(!KotlinBuiltIns.isPrimitiveType(type), { "'lateinit' modifier is not allowed on primitive types" })
|
||||
assert(!KotlinBuiltIns.isPrimitiveType(type)) { "'lateinit' modifier is not allowed on primitive types" }
|
||||
val startOffset = getter.startOffset
|
||||
val endOffset = getter.endOffset
|
||||
val irBuilder = context.createIrBuilder(getter.symbol, startOffset, endOffset)
|
||||
|
||||
+2
-4
@@ -149,7 +149,7 @@ class LocalDeclarationsLowering(val context: BackendContext, val localNameProvid
|
||||
}
|
||||
|
||||
override fun toString(): String =
|
||||
"LocalClassContext for ${descriptor}"
|
||||
"LocalClassContext for $descriptor"
|
||||
}
|
||||
|
||||
private inner class LocalDeclarationsTransformer(val memberDeclaration: IrDeclaration) {
|
||||
@@ -270,14 +270,12 @@ class LocalDeclarationsLowering(val context: BackendContext, val localNameProvid
|
||||
val oldCallee = expression.descriptor.original
|
||||
val newCallee = transformedDeclarations[oldCallee] as IrConstructorSymbol? ?: return expression
|
||||
|
||||
val newExpression = IrDelegatingConstructorCallImpl(
|
||||
return IrDelegatingConstructorCallImpl(
|
||||
expression.startOffset, expression.endOffset,
|
||||
newCallee,
|
||||
newCallee.descriptor,
|
||||
remapTypeArguments(expression, newCallee.descriptor)
|
||||
).fillArguments(expression)
|
||||
|
||||
return newExpression
|
||||
}
|
||||
|
||||
private fun <T : IrMemberAccessExpression> T.fillArguments(oldExpression: IrMemberAccessExpression): T {
|
||||
|
||||
+1
-3
@@ -159,9 +159,7 @@ class ClassCodegen private constructor(
|
||||
// for each enclosing class and for each immediate member
|
||||
val classDescriptor = classForInnerClassRecord()
|
||||
if (classDescriptor != null) {
|
||||
if (parentClassCodegen != null) {
|
||||
parentClassCodegen.innerClasses.add(classDescriptor)
|
||||
}
|
||||
parentClassCodegen?.innerClasses?.add(classDescriptor)
|
||||
|
||||
var codegen: ClassCodegen? = this
|
||||
while (codegen != null) {
|
||||
|
||||
+1
-12
@@ -40,10 +40,6 @@ class ConstAndJvmFieldPropertiesLowering : IrElementTransformerVoid(), FileLower
|
||||
irFile.transformChildrenVoid(this)
|
||||
}
|
||||
|
||||
override fun visitDeclaration(declaration: IrDeclaration): IrStatement {
|
||||
return super.visitDeclaration(declaration)
|
||||
}
|
||||
|
||||
override fun visitProperty(declaration: IrProperty): IrStatement {
|
||||
if (JvmCodegenUtil.isConstOrHasJvmFieldAnnotation(declaration.descriptor)) {
|
||||
/*Safe or need copy?*/
|
||||
@@ -53,15 +49,8 @@ class ConstAndJvmFieldPropertiesLowering : IrElementTransformerVoid(), FileLower
|
||||
return super.visitProperty(declaration)
|
||||
}
|
||||
|
||||
override fun visitMemberAccess(expression: IrMemberAccessExpression): IrExpression {
|
||||
return super.visitMemberAccess(expression)
|
||||
}
|
||||
|
||||
override fun visitCall(expression: IrCall): IrExpression {
|
||||
val descriptor = expression.descriptor
|
||||
if (descriptor !is PropertyAccessorDescriptor) {
|
||||
return super.visitCall(expression)
|
||||
}
|
||||
val descriptor = expression.descriptor as? PropertyAccessorDescriptor ?: return super.visitCall(expression)
|
||||
|
||||
val property = descriptor.correspondingProperty
|
||||
if (JvmCodegenUtil.isConstOrHasJvmFieldAnnotation(property)) {
|
||||
|
||||
+1
-4
@@ -81,9 +81,6 @@ class ContextAnnotator(val state: GenerationState) : ClassLowerWithContext() {
|
||||
private val IrClassContext.codegenContext: CodegenContext<*>
|
||||
get() = context2Codegen[this]!!
|
||||
|
||||
private val ClassDescriptor.codegenContext: CodegenContext<*>
|
||||
get() = class2Codegen[this]!!
|
||||
|
||||
|
||||
override fun lowerBefore(irClass: IrClass, data: IrClassContext) {
|
||||
val descriptor = irClass.descriptor
|
||||
@@ -172,7 +169,7 @@ class SyntheticAccessorLowering(val context: JvmBackendContext) : FileLoweringPa
|
||||
JvmCodegenUtil.getDirectMember(descriptor),
|
||||
(expression as? IrCall)?.superQualifier
|
||||
)
|
||||
val accessor = Companion.actualAccessor(descriptor, directAccessor)
|
||||
val accessor = actualAccessor(descriptor, directAccessor)
|
||||
|
||||
if (accessor is AccessorForCallableDescriptor<*> && descriptor !is AccessorForCallableDescriptor<*>) {
|
||||
val isConstructor = descriptor is ConstructorDescriptor
|
||||
|
||||
Reference in New Issue
Block a user