From 0b0550f562c485606a38d96b1327718d030cc1dc Mon Sep 17 00:00:00 2001 From: Ivan Kylchik Date: Wed, 15 Apr 2020 12:49:19 +0300 Subject: [PATCH] Remove useless Intrinsic interface Moved all its methods inside sealed class --- .../common/interpreter/intrinsics/Intrinsic.kt | 16 ---------------- .../intrinsics/IntrinsicImplementations.kt | 5 ++++- 2 files changed, 4 insertions(+), 17 deletions(-) delete mode 100644 compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/interpreter/intrinsics/Intrinsic.kt diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/interpreter/intrinsics/Intrinsic.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/interpreter/intrinsics/Intrinsic.kt deleted file mode 100644 index 8fe3e5a5738..00000000000 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/interpreter/intrinsics/Intrinsic.kt +++ /dev/null @@ -1,16 +0,0 @@ -/* - * Copyright 2010-2020 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. - */ - -package org.jetbrains.kotlin.backend.common.interpreter.intrinsics - -import org.jetbrains.kotlin.backend.common.interpreter.ExecutionResult -import org.jetbrains.kotlin.backend.common.interpreter.stack.Stack -import org.jetbrains.kotlin.ir.IrElement -import org.jetbrains.kotlin.ir.declarations.IrFunction - -interface Intrinsic { - fun equalTo(irFunction: IrFunction): Boolean - suspend fun evaluate(irFunction: IrFunction, stack: Stack, interpret: suspend IrElement.() -> ExecutionResult): ExecutionResult -} \ No newline at end of file diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/interpreter/intrinsics/IntrinsicImplementations.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/interpreter/intrinsics/IntrinsicImplementations.kt index 8bf360b7da4..535f5a120cf 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/interpreter/intrinsics/IntrinsicImplementations.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/interpreter/intrinsics/IntrinsicImplementations.kt @@ -17,7 +17,10 @@ import org.jetbrains.kotlin.ir.declarations.IrFunction import org.jetbrains.kotlin.ir.types.classOrNull import org.jetbrains.kotlin.ir.util.* -sealed class IntrinsicBase : Intrinsic +sealed class IntrinsicBase { + abstract fun equalTo(irFunction: IrFunction): Boolean + abstract suspend fun evaluate(irFunction: IrFunction, stack: Stack, interpret: suspend IrElement.() -> ExecutionResult): ExecutionResult +} object EmptyArray : IntrinsicBase() { override fun equalTo(irFunction: IrFunction): Boolean {