[FIR] Introduce some typed FirReference.toResolvedXXXSymbol utilities
This commit is contained in:
committed by
Space Team
parent
cffc32ec76
commit
b53c4a6353
+3
-3
@@ -14,7 +14,7 @@ import org.jetbrains.kotlin.fir.expressions.builder.buildFunctionCall
|
||||
import org.jetbrains.kotlin.fir.expressions.builder.buildPropertyAccessExpression
|
||||
import org.jetbrains.kotlin.fir.extensions.FirAssignExpressionAltererExtension
|
||||
import org.jetbrains.kotlin.fir.references.builder.buildSimpleNamedReference
|
||||
import org.jetbrains.kotlin.fir.references.resolvedSymbol
|
||||
import org.jetbrains.kotlin.fir.references.toResolvedVariableSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirBackingFieldSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirFieldSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirPropertySymbol
|
||||
@@ -34,7 +34,7 @@ class FirAssignmentPluginAssignAltererExtension(
|
||||
}
|
||||
|
||||
private fun FirVariableAssignment.supportsTransformVariableAssignment(): Boolean {
|
||||
return when (val lSymbol = lValue.resolvedSymbol as? FirVariableSymbol<*>) {
|
||||
return when (val lSymbol = lValue.toResolvedVariableSymbol()) {
|
||||
is FirPropertySymbol -> lSymbol.isVal && !lSymbol.isLocal && lSymbol.hasSpecialAnnotation()
|
||||
is FirBackingFieldSymbol -> lSymbol.isVal && lSymbol.hasSpecialAnnotation()
|
||||
is FirFieldSymbol -> lSymbol.isVal && lSymbol.hasSpecialAnnotation()
|
||||
@@ -47,7 +47,7 @@ class FirAssignmentPluginAssignAltererExtension(
|
||||
|
||||
private fun buildFunctionCall(variableAssignment: FirVariableAssignment): FirFunctionCall {
|
||||
val leftArgument = variableAssignment.lValue
|
||||
val leftSymbol = leftArgument.resolvedSymbol as FirVariableSymbol<*>
|
||||
val leftSymbol = leftArgument.toResolvedVariableSymbol()!!
|
||||
val leftResolvedType = leftSymbol.resolvedReturnTypeRef
|
||||
val rightArgument = variableAssignment.rValue
|
||||
return buildFunctionCall {
|
||||
|
||||
Reference in New Issue
Block a user