diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/IrWhen.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/IrWhen.kt index 29eebaf32d8..fb5451b0c95 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/IrWhen.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/IrWhen.kt @@ -18,7 +18,6 @@ package org.jetbrains.kotlin.ir.expressions import org.jetbrains.kotlin.ir.IrElement import org.jetbrains.kotlin.ir.visitors.IrElementTransformer -import org.jetbrains.kotlin.ir.visitors.IrElementVisitor interface IrWhen : IrExpression { val origin: IrStatementOrigin? @@ -30,18 +29,7 @@ interface IrBranch : IrElement { var condition: IrExpression var result: IrExpression - override fun transform(transformer: IrElementTransformer, data: D): IrBranch = - transformer.visitBranch(this, data) - - override fun accept(visitor: IrElementVisitor, data: D): R = - visitor.visitBranch(this, data) -} - -interface IrElseBranch : IrBranch { - override fun transform(transformer: IrElementTransformer, data: D): IrElseBranch = - transformer.visitElseBranch(this, data) - - override fun accept(visitor: IrElementVisitor, data: D): R = - visitor.visitElseBranch(this, data) + override fun transform(transformer: IrElementTransformer, data: D): IrBranch } +interface IrElseBranch : IrBranch diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrWhenImpl.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrWhenImpl.kt index 9a779ecad34..53a4c8fa142 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrWhenImpl.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrWhenImpl.kt @@ -79,6 +79,12 @@ open class IrBranchImpl( constructor(condition: IrExpression, result: IrExpression) : this(condition.startOffset, condition.endOffset, condition, result) + override fun accept(visitor: IrElementVisitor, data: D): R = + visitor.visitBranch(this, data) + + override fun transform(transformer: IrElementTransformer, data: D): IrBranch = + transformer.visitBranch(this, data) + override fun acceptChildren(visitor: IrElementVisitor, data: D) { condition.accept(visitor, data) result.accept(visitor, data) @@ -88,7 +94,6 @@ open class IrBranchImpl( condition = condition.transform(transformer, data) result = result.transform(transformer, data) } - } class IrElseBranchImpl( @@ -101,4 +106,10 @@ class IrElseBranchImpl( IrElseBranch { constructor(condition: IrExpression, result: IrExpression) : this(condition.startOffset, condition.endOffset, condition, result) -} \ No newline at end of file + + override fun accept(visitor: IrElementVisitor, data: D): R = + visitor.visitElseBranch(this, data) + + override fun transform(transformer: IrElementTransformer, data: D): IrElseBranch = + transformer.visitElseBranch(this, data) +}