[KxSerialization] Change visibility for synthetic functions
- synthetic constructor became internal for final classes - write$Self became internal for final classes Resolves https://github.com/Kotlin/kotlinx.serialization/issues/2209 Merge-request: KT-MR-9068 Merged-by: Sergey Shanshin <Sergey.Shanshin@jetbrains.com>
This commit is contained in:
committed by
Space Team
parent
9f85739599
commit
5ba1b36796
+4
-2
@@ -347,7 +347,8 @@ object KSerializerDescriptorResolver {
|
||||
|
||||
functionDescriptor.initialize(
|
||||
consParams,
|
||||
DescriptorVisibilities.PUBLIC
|
||||
// load constructor for final classes could be internal, because it can't be used in inheritors
|
||||
if (classDescriptor.modality == Modality.FINAL) DescriptorVisibilities.INTERNAL else DescriptorVisibilities.PUBLIC
|
||||
)
|
||||
|
||||
functionDescriptor.returnType = classDescriptor.defaultType
|
||||
@@ -586,7 +587,8 @@ object KSerializerDescriptorResolver {
|
||||
args,
|
||||
returnType,
|
||||
Modality.FINAL,
|
||||
DescriptorVisibilities.PUBLIC
|
||||
// write$Self for final classes could be internal, because it can't be called in inheritors
|
||||
if (thisClass.modality == Modality.FINAL) DescriptorVisibilities.INTERNAL else DescriptorVisibilities.PUBLIC
|
||||
)
|
||||
|
||||
return f
|
||||
|
||||
Reference in New Issue
Block a user