[PLUGIN API] Add extension point to customize linkage process
This commit is contained in:
+2
-1
@@ -7,8 +7,9 @@ package org.jetbrains.kotlin.backend.common.extensions
|
||||
|
||||
import org.jetbrains.kotlin.extensions.ProjectExtensionDescriptor
|
||||
import org.jetbrains.kotlin.ir.declarations.IrModuleFragment
|
||||
import org.jetbrains.kotlin.ir.linkage.IrDeserializer
|
||||
|
||||
interface IrGenerationExtension {
|
||||
interface IrGenerationExtension : IrDeserializer.IrLinkerExtension {
|
||||
companion object :
|
||||
ProjectExtensionDescriptor<IrGenerationExtension>(
|
||||
"org.jetbrains.kotlin.irGenerationExtension", IrGenerationExtension::class.java
|
||||
|
||||
@@ -5,10 +5,16 @@
|
||||
|
||||
package org.jetbrains.kotlin.ir.linkage
|
||||
|
||||
import org.jetbrains.kotlin.ir.declarations.IrDeclaration
|
||||
import org.jetbrains.kotlin.ir.declarations.IrModuleFragment
|
||||
import org.jetbrains.kotlin.ir.symbols.IrSymbol
|
||||
|
||||
interface IrDeserializer : IrProvider {
|
||||
|
||||
interface IrLinkerExtension {
|
||||
fun resolveSymbol(symbol: IrSymbol): IrDeclaration? = null
|
||||
}
|
||||
|
||||
fun init(moduleFragment: IrModuleFragment?) {}
|
||||
fun postProcess() {}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user