Do not sort fake overrides in DescriptorSerializer

Sorting invokes descriptor renderer, so the fewer descriptors we are
sorting, the better. This helps to save a few percent of compilation
time in a synthetic project from KT-52326.
This commit is contained in:
Alexander Udalov
2022-05-27 23:19:15 +02:00
parent f5f398788d
commit 22329c7124
2 changed files with 5 additions and 4 deletions
@@ -135,11 +135,10 @@ class DescriptorSerializer private constructor(
?: sort(
DescriptorUtils.getAllDescriptors(classDescriptor.defaultType.memberScope)
.filterIsInstance<CallableMemberDescriptor>()
.filter { it.kind != CallableMemberDescriptor.Kind.FAKE_OVERRIDE }
)
for (descriptor in callableMembers) {
if (descriptor.kind == CallableMemberDescriptor.Kind.FAKE_OVERRIDE) continue
when (descriptor) {
is PropertyDescriptor -> propertyProto(descriptor)?.let { builder.addProperty(it) }
is FunctionDescriptor -> functionProto(descriptor)?.let { builder.addFunction(it) }