From b087d2d756d7bafaaf7b57bb8a4a2f5b446ac336 Mon Sep 17 00:00:00 2001 From: Anton Bannykh Date: Tue, 14 Jan 2020 18:23:44 +0300 Subject: [PATCH] IR impl: additional constructors for IrBody implementations --- .../jetbrains/kotlin/ir/expressions/impl/IrBlockBodyImpl.kt | 4 ++++ .../kotlin/ir/expressions/impl/IrExpressionBodyImpl.kt | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrBlockBodyImpl.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrBlockBodyImpl.kt index b98ec2d385c..1d47e79470e 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrBlockBodyImpl.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrBlockBodyImpl.kt @@ -34,6 +34,10 @@ class IrBlockBodyImpl( this.statements.addAll(statements) } + constructor(startOffset: Int, endOffset: Int, fn: IrBlockBodyImpl.() -> Unit) : this(startOffset, endOffset) { + this.fn() + } + override val statements: MutableList = ArrayList() override fun accept(visitor: IrElementVisitor, data: D): R { diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrExpressionBodyImpl.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrExpressionBodyImpl.kt index b70f259d2b7..e3122f59ea7 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrExpressionBodyImpl.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrExpressionBodyImpl.kt @@ -35,6 +35,10 @@ class IrExpressionBodyImpl( constructor(expression: IrExpression) : this(expression.startOffset, expression.endOffset, expression) + constructor(startOffset: Int, endOffset: Int, initFn: IrExpressionBodyImpl.() -> Unit) : this(startOffset, endOffset) { + this.initFn() + } + override lateinit var expression: IrExpression override fun accept(visitor: IrElementVisitor, data: D): R =