KT-45777: Take snapshots and compute changes for Java classes

Create `JavaClassDescriptor`s for Java classes
Ignore anonymous and synthetic classes
as they can't impact recompilation.
Clean up handling of local and anonymous classes

Bug: KT-45777
Test: New JavaClassDescriptorCreatorTest
This commit is contained in:
Hung Nguyen
2021-08-11 09:22:39 +01:00
committed by nataliya.valtman
parent 98e4d67900
commit a342c81a9f
25 changed files with 2993 additions and 197 deletions
@@ -96,7 +96,7 @@ class DeserializationComponentsForJava(
errorReporter: ErrorReporter,
javaSourceElementFactory: JavaSourceElementFactory
): ModuleData {
val storageManager = LockBasedStorageManager("RuntimeModuleData")
val storageManager = LockBasedStorageManager("DeserializationComponentsForJava.ModuleData")
val builtIns = JvmBuiltIns(storageManager, JvmBuiltIns.Kind.FROM_DEPENDENCIES)
val module = ModuleDescriptorImpl(Name.special("<$moduleName>"), storageManager, builtIns)
builtIns.builtInsModule = module