[FIR2IR] Drop Fir2IrSignatureComposer
This interface had only one implementation, so all its usages were replaced with this implementation
This commit is contained in:
committed by
Space Team
parent
2fd77d0925
commit
5f36f80d25
@@ -426,7 +426,7 @@ class Fir2IrClassifierStorage(
|
||||
val irTypeParameter = with(typeParameter) {
|
||||
convertWithOffsets { startOffset, endOffset ->
|
||||
signatureComposer.composeTypeParameterSignature(
|
||||
typeParameter, index, ownerSymbol.signature
|
||||
index, ownerSymbol.signature
|
||||
)?.let { signature ->
|
||||
if (ownerSymbol is IrClassifierSymbol) {
|
||||
symbolTable.declareGlobalTypeParameter(
|
||||
|
||||
@@ -11,6 +11,7 @@ import org.jetbrains.kotlin.fir.backend.generators.CallAndReferenceGenerator
|
||||
import org.jetbrains.kotlin.fir.backend.generators.DelegatedMemberGenerator
|
||||
import org.jetbrains.kotlin.fir.backend.generators.FakeOverrideGenerator
|
||||
import org.jetbrains.kotlin.fir.resolve.ScopeSession
|
||||
import org.jetbrains.kotlin.fir.signaturer.FirBasedSignatureComposer
|
||||
import org.jetbrains.kotlin.ir.IrLock
|
||||
import org.jetbrains.kotlin.ir.declarations.IrFactory
|
||||
import org.jetbrains.kotlin.ir.linkage.IrProvider
|
||||
@@ -33,7 +34,7 @@ interface Fir2IrComponents {
|
||||
val declarationStorage: Fir2IrDeclarationStorage
|
||||
|
||||
val typeConverter: Fir2IrTypeConverter
|
||||
val signatureComposer: Fir2IrSignatureComposer
|
||||
val signatureComposer: FirBasedSignatureComposer
|
||||
val visibilityConverter: Fir2IrVisibilityConverter
|
||||
|
||||
val annotationGenerator: AnnotationGenerator
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
/*
|
||||
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.fir.backend
|
||||
|
||||
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
||||
import org.jetbrains.kotlin.fir.declarations.FirProperty
|
||||
import org.jetbrains.kotlin.fir.declarations.FirTypeParameter
|
||||
import org.jetbrains.kotlin.fir.symbols.ConeClassLikeLookupTag
|
||||
import org.jetbrains.kotlin.ir.util.IdSignature
|
||||
|
||||
interface Fir2IrSignatureComposer {
|
||||
val mangler: FirMangler
|
||||
fun composeSignature(
|
||||
declaration: FirDeclaration,
|
||||
containingClass: ConeClassLikeLookupTag? = null,
|
||||
forceTopLevelPrivate: Boolean = false,
|
||||
forceExpect: Boolean = false,
|
||||
): IdSignature?
|
||||
|
||||
fun composeAccessorSignature(
|
||||
property: FirProperty,
|
||||
isSetter: Boolean,
|
||||
containingClass: ConeClassLikeLookupTag? = null,
|
||||
forceTopLevelPrivate: Boolean = false
|
||||
): IdSignature?
|
||||
|
||||
fun composeTypeParameterSignature(typeParameter: FirTypeParameter, index: Int, containerSignature: IdSignature?): IdSignature?
|
||||
fun withFileSignature(sig: IdSignature.FileSignature, body: () -> Unit)
|
||||
}
|
||||
+3
-2
@@ -5,16 +5,17 @@
|
||||
|
||||
package org.jetbrains.kotlin.fir.backend
|
||||
|
||||
import org.jetbrains.kotlin.fir.signaturer.FirBasedSignatureComposer
|
||||
import org.jetbrains.kotlin.ir.util.IdSignature
|
||||
import org.jetbrains.kotlin.ir.util.IdSignatureComposer
|
||||
|
||||
class WrappedDescriptorSignatureComposer(
|
||||
private val delegate: IdSignatureComposer,
|
||||
private val firComposer: Fir2IrSignatureComposer
|
||||
private val firComposer: FirBasedSignatureComposer
|
||||
) : IdSignatureComposer by delegate {
|
||||
override fun withFileSignature(fileSignature: IdSignature.FileSignature, body: () -> Unit) {
|
||||
firComposer.withFileSignature(fileSignature) {
|
||||
delegate.withFileSignature(fileSignature, body)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+10
-13
@@ -5,11 +5,9 @@
|
||||
|
||||
package org.jetbrains.kotlin.fir.signaturer
|
||||
|
||||
import org.jetbrains.kotlin.KtFakeSourceElementKind
|
||||
import org.jetbrains.kotlin.backend.common.serialization.mangle.MangleConstant
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.fir.*
|
||||
import org.jetbrains.kotlin.fir.backend.Fir2IrSignatureComposer
|
||||
import org.jetbrains.kotlin.fir.backend.FirMangler
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.impl.FirDefaultPropertyGetter
|
||||
@@ -24,10 +22,10 @@ import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
|
||||
// @NoMutableState -- we'll restore this annotation once we get rid of withFileSignature().
|
||||
class FirBasedSignatureComposer(override val mangler: FirMangler) : Fir2IrSignatureComposer {
|
||||
class FirBasedSignatureComposer(val mangler: FirMangler) {
|
||||
private var fileSignature: IdSignature.FileSignature? = null
|
||||
|
||||
override fun withFileSignature(sig: IdSignature.FileSignature, body: () -> Unit) {
|
||||
fun withFileSignature(sig: IdSignature.FileSignature, body: () -> Unit) {
|
||||
fileSignature = sig
|
||||
body()
|
||||
fileSignature = null
|
||||
@@ -86,11 +84,11 @@ class FirBasedSignatureComposer(override val mangler: FirMangler) : Fir2IrSignat
|
||||
}
|
||||
}
|
||||
|
||||
override fun composeSignature(
|
||||
fun composeSignature(
|
||||
declaration: FirDeclaration,
|
||||
containingClass: ConeClassLikeLookupTag?,
|
||||
forceTopLevelPrivate: Boolean,
|
||||
forceExpect: Boolean,
|
||||
containingClass: ConeClassLikeLookupTag? = null,
|
||||
forceTopLevelPrivate: Boolean = false,
|
||||
forceExpect: Boolean = false,
|
||||
): IdSignature? {
|
||||
if (declaration is FirAnonymousObject || declaration is FirAnonymousFunction) return null
|
||||
if (declaration is FirRegularClass && declaration.classId.isLocal) return null
|
||||
@@ -169,8 +167,7 @@ class FirBasedSignatureComposer(override val mangler: FirMangler) : Fir2IrSignat
|
||||
}
|
||||
}
|
||||
|
||||
override fun composeTypeParameterSignature(
|
||||
typeParameter: FirTypeParameter,
|
||||
fun composeTypeParameterSignature(
|
||||
index: Int,
|
||||
containerSignature: IdSignature?
|
||||
): IdSignature? {
|
||||
@@ -181,11 +178,11 @@ class FirBasedSignatureComposer(override val mangler: FirMangler) : Fir2IrSignat
|
||||
)
|
||||
}
|
||||
|
||||
override fun composeAccessorSignature(
|
||||
fun composeAccessorSignature(
|
||||
property: FirProperty,
|
||||
isSetter: Boolean,
|
||||
containingClass: ConeClassLikeLookupTag?,
|
||||
forceTopLevelPrivate: Boolean
|
||||
containingClass: ConeClassLikeLookupTag? = null,
|
||||
forceTopLevelPrivate: Boolean = false
|
||||
): IdSignature? {
|
||||
val propSig: IdSignature.CommonSignature
|
||||
val fileSig: IdSignature.FileSignature?
|
||||
|
||||
Reference in New Issue
Block a user