IR: introduce IrFactory
This is needed to refactor IrPersistingElementBase-based implementations into another module, to use it in JS IR. (cherry picked from commit 4d0802a0512a8fb4c0bd1319952dc4ca2ff0bd9c)
This commit is contained in:
committed by
Vasily Levchenko
parent
b67b26bdb9
commit
2ee5d6760b
+6
-2
@@ -12,6 +12,7 @@ import org.jetbrains.kotlin.backend.konan.descriptors.KonanSharedVariablesManage
|
||||
import org.jetbrains.kotlin.backend.konan.descriptors.findPackage
|
||||
import org.jetbrains.kotlin.backend.konan.descriptors.kotlinNativeInternal
|
||||
import org.jetbrains.kotlin.backend.konan.ir.KonanIr
|
||||
import org.jetbrains.kotlin.builtins.konan.KonanBuiltIns
|
||||
import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys
|
||||
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageLocation
|
||||
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity
|
||||
@@ -20,11 +21,12 @@ import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
|
||||
import org.jetbrains.kotlin.incremental.components.NoLookupLocation
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.declarations.IrFile
|
||||
import org.jetbrains.kotlin.builtins.konan.KonanBuiltIns
|
||||
import org.jetbrains.kotlin.ir.builders.IrBuilderWithScope
|
||||
import org.jetbrains.kotlin.ir.declarations.IrClass
|
||||
import org.jetbrains.kotlin.ir.declarations.IrDeclaration
|
||||
import org.jetbrains.kotlin.ir.declarations.IrFactory
|
||||
import org.jetbrains.kotlin.ir.declarations.IrFile
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl
|
||||
import org.jetbrains.kotlin.ir.symbols.IrFunctionSymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
@@ -66,6 +68,8 @@ internal abstract class KonanBackendContext(val config: KonanConfig) : CommonBac
|
||||
override val mapping: Mapping = DefaultMapping()
|
||||
|
||||
override val extractedLocalClasses: MutableSet<IrClass> = mutableSetOf()
|
||||
|
||||
override val irFactory: IrFactory = IrFactoryImpl
|
||||
}
|
||||
|
||||
internal fun IrElement.getCompilerMessageLocation(containingFile: IrFile): CompilerMessageLocation? =
|
||||
|
||||
Reference in New Issue
Block a user