Search for standard serializers in both internal and root packages

To allow graduate migration of some classes (e.g. IntSerializer)
from kotlinx.serialization.internal.* to kotlinx.serialization.*
This commit is contained in:
Leonid Startsev
2020-01-20 18:00:40 +03:00
parent db4273d677
commit 9e8f21cc20
@@ -214,7 +214,9 @@ fun findStandardKotlinTypeSerializer(module: ModuleDescriptor, kType: KotlinType
"java.util.Map.Entry" -> "MapEntrySerializer"
else -> return null
}
return module.findClassAcrossModuleDependencies(ClassId(internalPackageFqName, Name.identifier(name)))
val identifier = Name.identifier(name)
return module.findClassAcrossModuleDependencies(ClassId(internalPackageFqName, identifier))
?: module.findClassAcrossModuleDependencies(ClassId(SerializationPackages.packageFqName, identifier))
}
fun findEnumTypeSerializer(module: ModuleDescriptor, kType: KotlinType): ClassDescriptor? {