Remove StorageComponentContainerContributor::onContainerComposed
Rename addDeclarations -> registerModuleComponents
Use it to provide SamWithReceiverResolver extensions instead
Post construction on container composition can be achieved
but manually inserting injections where it seems appropriate
is bug prone
This fixes a bug where SamWithReceiverPlugin extension was not registered
for some containers in IDE which led to incorrect highlighting in IDE
Add IDE test for applying SamWithReceiver plugin
#KT-18062 Fixed
This commit is contained in:
+2
-5
@@ -16,9 +16,8 @@
|
||||
|
||||
package org.jetbrains.kotlin.extensions
|
||||
|
||||
import org.jetbrains.kotlin.analyzer.ModuleInfo
|
||||
import org.jetbrains.kotlin.container.ComponentProvider
|
||||
import org.jetbrains.kotlin.container.StorageComponentContainer
|
||||
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
|
||||
import org.jetbrains.kotlin.resolve.TargetPlatform
|
||||
|
||||
interface StorageComponentContainerContributor {
|
||||
@@ -26,7 +25,5 @@ interface StorageComponentContainerContributor {
|
||||
"org.jetbrains.kotlin.storageComponentContainerContributor", StorageComponentContainerContributor::class.java
|
||||
)
|
||||
|
||||
fun addDeclarations(container: StorageComponentContainer, platform: TargetPlatform) {}
|
||||
|
||||
fun onContainerComposed(container: ComponentProvider, moduleInfo: ModuleInfo?) {}
|
||||
fun registerModuleComponents(container: StorageComponentContainer, platform: TargetPlatform, moduleDescriptor: ModuleDescriptor) {}
|
||||
}
|
||||
@@ -53,7 +53,7 @@ fun StorageComponentContainer.configureModule(
|
||||
platform.platformConfigurator.configureModuleComponents(this)
|
||||
|
||||
for (extension in StorageComponentContainerContributor.getInstances(moduleContext.project)) {
|
||||
extension.addDeclarations(this, platform)
|
||||
extension.registerModuleComponents(this, platform, moduleContext.module)
|
||||
}
|
||||
|
||||
configurePlatformIndependentComponents()
|
||||
|
||||
Reference in New Issue
Block a user