Remove useless Intrinsic interface
Moved all its methods inside sealed class
This commit is contained in:
-16
@@ -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
|
|
||||||
}
|
|
||||||
+4
-1
@@ -17,7 +17,10 @@ import org.jetbrains.kotlin.ir.declarations.IrFunction
|
|||||||
import org.jetbrains.kotlin.ir.types.classOrNull
|
import org.jetbrains.kotlin.ir.types.classOrNull
|
||||||
import org.jetbrains.kotlin.ir.util.*
|
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() {
|
object EmptyArray : IntrinsicBase() {
|
||||||
override fun equalTo(irFunction: IrFunction): Boolean {
|
override fun equalTo(irFunction: IrFunction): Boolean {
|
||||||
|
|||||||
Reference in New Issue
Block a user