[PLUGIN API] Implement custom linkage for plugin extensions

This commit is contained in:
Roman Artemev
2020-06-02 16:10:46 +03:00
committed by romanart
parent a401374ed4
commit 5eae262264
8 changed files with 34 additions and 13 deletions
@@ -478,7 +478,7 @@ class GenerateIrRuntime {
val irProviders = listOf(irLinker)
val psi2IrTranslator = Psi2IrTranslator(languageVersionSettings, psi2IrContext.configuration, signaturer)
return psi2IrTranslator.generateModuleFragment(psi2IrContext, files, irProviders, null)
return psi2IrTranslator.generateModuleFragment(psi2IrContext, files, irProviders, emptyList(), null)
}
private fun doSerializeModule(moduleFragment: IrModuleFragment, bindingContext: BindingContext, files: List<KtFile>, perFile: Boolean = false): String {
@@ -531,7 +531,7 @@ class GenerateIrRuntime {
val jsLinker = JsIrLinker(moduleDescriptor, logger, irBuiltIns, symbolTable, functionFactory, null)
val moduleFragment = jsLinker.deserializeFullModule(moduleDescriptor, moduleDescriptor.kotlinLibrary)
jsLinker.init(null)
jsLinker.init(null, emptyList())
// Create stubs
ExternalDependenciesGenerator(symbolTable, listOf(jsLinker), languageVersionSettings)
.generateUnboundSymbolsAsDependencies()
@@ -562,7 +562,7 @@ class GenerateIrRuntime {
val moduleFragment = jsLinker.deserializeFullModule(moduleDescriptor, moduleDescriptor.kotlinLibrary)
// Create stubs
jsLinker.init(null)
jsLinker.init(null, emptyList())
// Create stubs
ExternalDependenciesGenerator(symbolTable, listOf(jsLinker), languageVersionSettings)
.generateUnboundSymbolsAsDependencies()