[FIR] Get rid of operation in FirVariableAssignment
`FirVariableAssignment` is creates only for expressions `x = y` For other assign operators there is a `FirOperatorCall`
This commit is contained in:
@@ -928,7 +928,7 @@ class FirRenderer(builder: StringBuilder) : FirVisitorVoid() {
|
||||
visitQualifiedAccess(variableAssignment)
|
||||
variableAssignment.lValue.accept(this)
|
||||
print(" ")
|
||||
visitAssignment(variableAssignment.operation, variableAssignment.rValue)
|
||||
visitAssignment(FirOperation.ASSIGN, variableAssignment.rValue)
|
||||
}
|
||||
|
||||
override fun visitArraySetCall(arraySetCall: FirArraySetCall) {
|
||||
|
||||
@@ -25,7 +25,6 @@ abstract class FirVariableAssignment : FirPureAbstractElement(), FirQualifiedAcc
|
||||
abstract override val calleeReference: FirReference
|
||||
abstract val lValue: FirReference
|
||||
abstract val rValue: FirExpression
|
||||
abstract val operation: FirOperation
|
||||
|
||||
override fun <R, D> accept(visitor: FirVisitor<R, D>, data: D): R = visitor.visitVariableAssignment(this, data)
|
||||
|
||||
|
||||
+1
-3
@@ -8,7 +8,6 @@ package org.jetbrains.kotlin.fir.expressions.impl
|
||||
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
||||
import org.jetbrains.kotlin.fir.expressions.FirExpression
|
||||
import org.jetbrains.kotlin.fir.expressions.FirOperation
|
||||
import org.jetbrains.kotlin.fir.expressions.FirVariableAssignment
|
||||
import org.jetbrains.kotlin.fir.impl.FirAbstractAnnotatedElement
|
||||
import org.jetbrains.kotlin.fir.references.FirReference
|
||||
@@ -22,8 +21,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
class FirVariableAssignmentImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override var safe: Boolean,
|
||||
override var rValue: FirExpression,
|
||||
override var operation: FirOperation
|
||||
override var rValue: FirExpression
|
||||
) : FirVariableAssignment(), FirModifiableQualifiedAccess, FirAbstractAnnotatedElement {
|
||||
override val annotations: MutableList<FirAnnotationCall> = mutableListOf()
|
||||
override var explicitReceiver: FirExpression? = null
|
||||
|
||||
-1
@@ -383,7 +383,6 @@ object ImplementationConfigurator : AbstractFirTreeImplementationConfigurator()
|
||||
|
||||
impl(variableAssignment) {
|
||||
parents += modifiableQualifiedAccess
|
||||
isMutable("operation")
|
||||
lateinit("calleeReference")
|
||||
defaultNoReceivers()
|
||||
|
||||
|
||||
-1
@@ -439,7 +439,6 @@ object NodeConfigurator : AbstractFieldConfigurator() {
|
||||
variableAssignment.configure {
|
||||
+field("lValue", reference)
|
||||
+field("rValue", expression).withTransform()
|
||||
+field("operation", operationType)
|
||||
}
|
||||
|
||||
whenSubjectExpression.configure {
|
||||
|
||||
Reference in New Issue
Block a user