Move JvmBuiltIns initialization after container setup

It will be used in the further commits to initilize built-ins instance
with components as arguments
This commit is contained in:
Denis Zharkov
2016-09-21 16:09:18 +03:00
parent 63943c60d3
commit a7dedfab70
11 changed files with 29 additions and 21 deletions
@@ -36,7 +36,6 @@ import org.jetbrains.kotlin.platform.JavaToKotlinClassMap
import org.jetbrains.kotlin.platform.JvmBuiltIns
import org.jetbrains.kotlin.resolve.jvm.JavaDescriptorResolver
import org.jetbrains.kotlin.serialization.deserialization.DeserializationComponents
import org.jetbrains.kotlin.serialization.deserialization.LocalClassifierTypeSettings
import org.jetbrains.kotlin.serialization.deserialization.NotFoundClasses
import org.jetbrains.kotlin.storage.LockBasedStorageManager
@@ -64,7 +63,7 @@ class RuntimeModuleData private constructor(val deserialization: Deserialization
val lazyJavaPackageFragmentProvider = LazyJavaPackageFragmentProvider(globalJavaResolverContext)
builtIns.setOwnerModuleDescriptor(module)
builtIns.initialize(module)
val javaDescriptorResolver = JavaDescriptorResolver(lazyJavaPackageFragmentProvider, javaResolverCache)
val javaClassDataFinder = JavaClassDataFinder(reflectKotlinClassFinder, deserializedDescriptorResolver)
@@ -76,6 +75,7 @@ class RuntimeModuleData private constructor(val deserialization: Deserialization
storageManager, module, javaClassDataFinder, binaryClassAnnotationAndConstantLoader,
lazyJavaPackageFragmentProvider, notFoundClasses, RuntimeErrorReporter, LookupTracker.DO_NOTHING
)
singleModuleClassResolver.resolver = javaDescriptorResolver
deserializedDescriptorResolver.setComponents(deserializationComponentsForJava)