Remove dependency of 'resolution' on 'deserialization'

Replace it with a dependency on 'descriptors'.

Move the existing marker interface ContractProvider to 'descriptors',
and create a new marker interface DeserializedDescriptor.
This commit is contained in:
Alexander Udalov
2020-03-15 18:30:18 +01:00
committed by Alexander Udalov
parent b6fdc96994
commit 92534eadaa
9 changed files with 24 additions and 11 deletions
+1 -1
View File
@@ -5,7 +5,7 @@ plugins {
dependencies {
compile(project(":compiler:util"))
compile(project(":core:deserialization"))
compile(project(":core:descriptors"))
compileOnly(intellijDep()) { includeJars("trove4j") }
}
@@ -17,7 +17,7 @@
package org.jetbrains.kotlin.contracts.description
import org.jetbrains.kotlin.descriptors.CallableDescriptor
import org.jetbrains.kotlin.serialization.deserialization.ContractProvider
import org.jetbrains.kotlin.descriptors.ContractProvider
import org.jetbrains.kotlin.storage.StorageManager
abstract class AbstractContractProvider : ContractProvider {
@@ -18,14 +18,12 @@ import org.jetbrains.kotlin.resolve.multiplatform.ExpectedActualResolver.Compati
import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter
import org.jetbrains.kotlin.resolve.scopes.MemberScope
import org.jetbrains.kotlin.resolve.scopes.getDescriptorsFiltered
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedClassDescriptor
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedMemberDescriptor
import org.jetbrains.kotlin.types.KotlinType
import org.jetbrains.kotlin.types.TypeConstructor
import org.jetbrains.kotlin.types.TypeConstructorSubstitution
import org.jetbrains.kotlin.types.TypeSubstitutor
import org.jetbrains.kotlin.types.checker.NewKotlinTypeChecker
import org.jetbrains.kotlin.types.checker.ClassicTypeCheckerContext
import org.jetbrains.kotlin.types.checker.NewKotlinTypeChecker
import org.jetbrains.kotlin.types.typeUtil.asTypeProjection
import org.jetbrains.kotlin.utils.SmartList
import org.jetbrains.kotlin.utils.keysToMap
@@ -581,5 +579,4 @@ fun DeclarationDescriptor.findActuals(inModule: ModuleDescriptor = this.module):
// TODO: Klibs still need to better handle source in deserialized descriptors.
val DeclarationDescriptorWithSource.couldHaveASource: Boolean get() =
this.source.containingFile != SourceFile.NO_SOURCE_FILE ||
this is DeserializedMemberDescriptor ||
this is DeserializedClassDescriptor
this is DeserializedDescriptor
+1
View File
@@ -5,6 +5,7 @@ plugins {
dependencies {
compile(project(":compiler:resolution"))
compile(project(":core:deserialization"))
}
sourceSets {