[FIR] PsiRawFirBuilder: drop obsolete LL FIR parts
This commit is contained in:
committed by
Space Team
parent
58a1662c02
commit
3962f26583
+1
-2
@@ -268,8 +268,7 @@ internal class RawFirNonLocalDeclarationBuilder private constructor(
|
|||||||
return when (declarationToBuild) {
|
return when (declarationToBuild) {
|
||||||
is KtProperty -> {
|
is KtProperty -> {
|
||||||
val ownerSymbol = containingClass?.symbol
|
val ownerSymbol = containingClass?.symbol
|
||||||
val ownerTypeArgumentsCount = containingClass?.typeParameters?.size
|
visitor.convertProperty(declarationToBuild, ownerSymbol)
|
||||||
visitor.convertProperty(declarationToBuild, ownerSymbol, ownerTypeArgumentsCount)
|
|
||||||
}
|
}
|
||||||
is KtConstructor<*> -> {
|
is KtConstructor<*> -> {
|
||||||
if (containingClass == null) {
|
if (containingClass == null) {
|
||||||
|
|||||||
+14
-55
@@ -68,11 +68,6 @@ open class PsiRawFirBuilder(
|
|||||||
target.bind(function)
|
target.bind(function)
|
||||||
}
|
}
|
||||||
|
|
||||||
protected open fun FirFunctionBuilder.additionalFunctionInit() {}
|
|
||||||
protected open fun FirPropertyBuilder.additionalPropertyInit() {}
|
|
||||||
protected open fun FirPropertyAccessorBuilder.additionalPropertyAccessorInit() {}
|
|
||||||
protected open fun FirBackingFieldBuilder.additionalBackingFieldInit() {}
|
|
||||||
|
|
||||||
var mode: BodyBuildingMode = bodyBuildingMode
|
var mode: BodyBuildingMode = bodyBuildingMode
|
||||||
private set
|
private set
|
||||||
|
|
||||||
@@ -257,43 +252,17 @@ open class PsiRawFirBuilder(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
open fun convertElement(element: KtElement, original: FirElement? = null): FirElement? =
|
fun convertElement(element: KtElement, original: FirElement? = null): FirElement? =
|
||||||
element.accept(this@Visitor, original)
|
element.accept(this@Visitor, original)
|
||||||
|
|
||||||
open fun convertProperty(
|
fun convertProperty(
|
||||||
property: KtProperty, ownerRegularOrAnonymousObjectSymbol: FirClassSymbol<*>?,
|
property: KtProperty,
|
||||||
ownerRegularClassTypeParametersCount: Int?,
|
ownerRegularOrAnonymousObjectSymbol: FirClassSymbol<*>?,
|
||||||
): FirProperty = property.toFirProperty(
|
): FirProperty = property.toFirProperty(
|
||||||
ownerRegularOrAnonymousObjectSymbol,
|
ownerRegularOrAnonymousObjectSymbol,
|
||||||
context
|
context
|
||||||
)
|
)
|
||||||
|
|
||||||
open fun convertPropertyAccessor(
|
|
||||||
accessor: KtPropertyAccessor?,
|
|
||||||
property: KtProperty,
|
|
||||||
propertyTypeRef: FirTypeRef,
|
|
||||||
propertySymbol: FirPropertySymbol,
|
|
||||||
isGetter: Boolean,
|
|
||||||
accessorAnnotationsFromProperty: List<FirAnnotation>,
|
|
||||||
parameterAnnotationsFromProperty: List<FirAnnotation>,
|
|
||||||
): FirPropertyAccessor? = accessor.toFirPropertyAccessor(
|
|
||||||
property,
|
|
||||||
propertyTypeRef,
|
|
||||||
propertySymbol,
|
|
||||||
isGetter,
|
|
||||||
accessorAnnotationsFromProperty,
|
|
||||||
parameterAnnotationsFromProperty,
|
|
||||||
)
|
|
||||||
|
|
||||||
open fun convertValueParameter(
|
|
||||||
valueParameter: KtParameter,
|
|
||||||
functionSymbol: FirFunctionSymbol<*>,
|
|
||||||
defaultTypeRef: FirTypeRef? = null,
|
|
||||||
valueParameterDeclaration: ValueParameterDeclaration,
|
|
||||||
additionalAnnotations: List<FirAnnotation> = emptyList(),
|
|
||||||
): FirValueParameter =
|
|
||||||
valueParameter.toFirValueParameter(defaultTypeRef, functionSymbol, valueParameterDeclaration, additionalAnnotations)
|
|
||||||
|
|
||||||
private fun KtTypeReference?.toFirOrImplicitType(): FirTypeRef =
|
private fun KtTypeReference?.toFirOrImplicitType(): FirTypeRef =
|
||||||
this?.toFirType() ?: FirImplicitTypeRefImplWithoutSource
|
this?.toFirType() ?: FirImplicitTypeRefImplWithoutSource
|
||||||
|
|
||||||
@@ -407,8 +376,7 @@ open class PsiRawFirBuilder(
|
|||||||
is KtProperty -> {
|
is KtProperty -> {
|
||||||
convertProperty(
|
convertProperty(
|
||||||
this@toFirDeclaration,
|
this@toFirDeclaration,
|
||||||
ownerClassBuilder.ownerRegularOrAnonymousObjectSymbol,
|
ownerClassBuilder.ownerRegularOrAnonymousObjectSymbol
|
||||||
ownerClassBuilder.ownerRegularClassTypeParametersCount
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
is KtDestructuringDeclaration -> {
|
is KtDestructuringDeclaration -> {
|
||||||
@@ -566,8 +534,6 @@ open class PsiRawFirBuilder(
|
|||||||
this.contractDescription = it
|
this.contractDescription = it
|
||||||
}
|
}
|
||||||
this.propertySymbol = propertySymbol
|
this.propertySymbol = propertySymbol
|
||||||
|
|
||||||
additionalPropertyAccessorInit()
|
|
||||||
}.also {
|
}.also {
|
||||||
it.initContainingClassAttr()
|
it.initContainingClassAttr()
|
||||||
bindFunctionTarget(accessorTarget, it)
|
bindFunctionTarget(accessorTarget, it)
|
||||||
@@ -650,8 +616,6 @@ open class PsiRawFirBuilder(
|
|||||||
this.initializer = backingFieldInitializer
|
this.initializer = backingFieldInitializer
|
||||||
this.isVar = property.isVar
|
this.isVar = property.isVar
|
||||||
this.isVal = !property.isVar
|
this.isVal = !property.isVar
|
||||||
|
|
||||||
additionalBackingFieldInit()
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
FirDefaultPropertyBackingField(
|
FirDefaultPropertyBackingField(
|
||||||
@@ -671,7 +635,7 @@ open class PsiRawFirBuilder(
|
|||||||
defaultTypeRef: FirTypeRef?,
|
defaultTypeRef: FirTypeRef?,
|
||||||
functionSymbol: FirFunctionSymbol<*>,
|
functionSymbol: FirFunctionSymbol<*>,
|
||||||
valueParameterDeclaration: ValueParameterDeclaration,
|
valueParameterDeclaration: ValueParameterDeclaration,
|
||||||
additionalAnnotations: List<FirAnnotation>,
|
additionalAnnotations: List<FirAnnotation> = emptyList(),
|
||||||
): FirValueParameter {
|
): FirValueParameter {
|
||||||
val name = convertValueParameterName(nameAsSafeName, valueParameterDeclaration) { nameIdentifier?.node?.text }
|
val name = convertValueParameterName(nameAsSafeName, valueParameterDeclaration) { nameIdentifier?.node?.text }
|
||||||
return buildValueParameter {
|
return buildValueParameter {
|
||||||
@@ -927,8 +891,8 @@ open class PsiRawFirBuilder(
|
|||||||
additionalAnnotations: List<FirAnnotation> = emptyList(),
|
additionalAnnotations: List<FirAnnotation> = emptyList(),
|
||||||
) {
|
) {
|
||||||
for (valueParameter in valueParameters) {
|
for (valueParameter in valueParameters) {
|
||||||
container.valueParameters += convertValueParameter(
|
container.valueParameters += valueParameter.toFirValueParameter(
|
||||||
valueParameter, functionSymbol, defaultTypeRef, valueParameterDeclaration, additionalAnnotations = additionalAnnotations
|
defaultTypeRef, functionSymbol, valueParameterDeclaration, additionalAnnotations = additionalAnnotations
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1824,11 +1788,10 @@ open class PsiRawFirBuilder(
|
|||||||
function.extractTypeParametersTo(this, symbol)
|
function.extractTypeParametersTo(this, symbol)
|
||||||
}
|
}
|
||||||
for (valueParameter in function.valueParameters) {
|
for (valueParameter in function.valueParameters) {
|
||||||
valueParameters += convertValueParameter(
|
valueParameters += valueParameter.toFirValueParameter(
|
||||||
valueParameter,
|
|
||||||
functionSymbol,
|
|
||||||
null,
|
null,
|
||||||
if (isAnonymousFunction) ValueParameterDeclaration.LAMBDA else ValueParameterDeclaration.FUNCTION
|
functionSymbol,
|
||||||
|
if (isAnonymousFunction) ValueParameterDeclaration.LAMBDA else ValueParameterDeclaration.FUNCTION,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
val actualTypeParameters = if (this is FirSimpleFunctionBuilder)
|
val actualTypeParameters = if (this is FirSimpleFunctionBuilder)
|
||||||
@@ -1851,7 +1814,6 @@ open class PsiRawFirBuilder(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
context.firFunctionTargets.removeLast()
|
context.firFunctionTargets.removeLast()
|
||||||
additionalFunctionInit()
|
|
||||||
}.build().also {
|
}.build().also {
|
||||||
bindFunctionTarget(target, it)
|
bindFunctionTarget(target, it)
|
||||||
if (it is FirSimpleFunction) {
|
if (it is FirSimpleFunction) {
|
||||||
@@ -1930,7 +1892,7 @@ open class PsiRawFirBuilder(
|
|||||||
multiParameter
|
multiParameter
|
||||||
} else {
|
} else {
|
||||||
val typeRef = valueParameter.typeReference.toFirOrImplicitType()
|
val typeRef = valueParameter.typeReference.toFirOrImplicitType()
|
||||||
convertValueParameter(valueParameter, symbol, typeRef, ValueParameterDeclaration.LAMBDA)
|
valueParameter.toFirValueParameter(typeRef, symbol, ValueParameterDeclaration.LAMBDA)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
val expressionSource = expression.toFirSourceElement()
|
val expressionSource = expression.toFirSourceElement()
|
||||||
@@ -2169,8 +2131,7 @@ open class PsiRawFirBuilder(
|
|||||||
propertyAnnotations.filter { it.useSiteTarget == FIELD || it.useSiteTarget == PROPERTY_DELEGATE_FIELD },
|
propertyAnnotations.filter { it.useSiteTarget == FIELD || it.useSiteTarget == PROPERTY_DELEGATE_FIELD },
|
||||||
)
|
)
|
||||||
|
|
||||||
getter = convertPropertyAccessor(
|
getter = this@toFirProperty.getter.toFirPropertyAccessor(
|
||||||
this@toFirProperty.getter,
|
|
||||||
this@toFirProperty,
|
this@toFirProperty,
|
||||||
propertyType,
|
propertyType,
|
||||||
propertySymbol = symbol,
|
propertySymbol = symbol,
|
||||||
@@ -2179,8 +2140,7 @@ open class PsiRawFirBuilder(
|
|||||||
parameterAnnotationsFromProperty = emptyList()
|
parameterAnnotationsFromProperty = emptyList()
|
||||||
)
|
)
|
||||||
|
|
||||||
setter = convertPropertyAccessor(
|
setter = this@toFirProperty.setter.toFirPropertyAccessor(
|
||||||
this@toFirProperty.setter,
|
|
||||||
this@toFirProperty,
|
this@toFirProperty,
|
||||||
propertyType,
|
propertyType,
|
||||||
propertySymbol = symbol,
|
propertySymbol = symbol,
|
||||||
@@ -2240,7 +2200,6 @@ open class PsiRawFirBuilder(
|
|||||||
}
|
}
|
||||||
|
|
||||||
contextReceivers.addAll(convertContextReceivers(this@toFirProperty.contextReceivers))
|
contextReceivers.addAll(convertContextReceivers(this@toFirProperty.contextReceivers))
|
||||||
additionalPropertyInit()
|
|
||||||
}.also {
|
}.also {
|
||||||
if (!isLocal) {
|
if (!isLocal) {
|
||||||
fillDanglingConstraintsTo(it)
|
fillDanglingConstraintsTo(it)
|
||||||
|
|||||||
+1
-4
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
* Copyright 2010-2024 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.
|
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -313,9 +313,6 @@ val FirClassBuilder.ownerRegularOrAnonymousObjectSymbol
|
|||||||
else -> null
|
else -> null
|
||||||
}
|
}
|
||||||
|
|
||||||
val FirClassBuilder.ownerRegularClassTypeParametersCount
|
|
||||||
get() = if (this is FirRegularClassBuilder) typeParameters.size else null
|
|
||||||
|
|
||||||
fun <T> FirPropertyBuilder.generateAccessorsByDelegate(
|
fun <T> FirPropertyBuilder.generateAccessorsByDelegate(
|
||||||
delegateBuilder: FirWrappedDelegateExpressionBuilder?,
|
delegateBuilder: FirWrappedDelegateExpressionBuilder?,
|
||||||
moduleData: FirModuleData,
|
moduleData: FirModuleData,
|
||||||
|
|||||||
Reference in New Issue
Block a user