From 3a494ac040c9b0ac462528da490508e81466e724 Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Fri, 23 Jan 2015 19:13:28 +0300 Subject: [PATCH] Unused code removed from OverrideResolver --- .../kotlin/resolve/OverrideResolver.java | 78 ------------------- 1 file changed, 78 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/OverrideResolver.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/OverrideResolver.java index d572e0a8b4a..b7be409a686 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/OverrideResolver.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/OverrideResolver.java @@ -33,7 +33,6 @@ import org.jetbrains.annotations.ReadOnly; import org.jetbrains.kotlin.builtins.KotlinBuiltIns; import org.jetbrains.kotlin.descriptors.*; import org.jetbrains.kotlin.descriptors.annotations.AnnotationDescriptor; -import org.jetbrains.kotlin.descriptors.impl.MutableClassDescriptor; import org.jetbrains.kotlin.lexer.JetTokens; import org.jetbrains.kotlin.name.Name; import org.jetbrains.kotlin.psi.*; @@ -63,89 +62,12 @@ public class OverrideResolver { - public void process(@NotNull TopDownAnalysisContext c) { - //all created fake descriptors are stored to resolve visibility on them later - generateOverridesAndDelegation(c); - - check(c); - } - public void check(@NotNull TopDownAnalysisContext c) { checkVisibility(c); checkOverrides(c); checkParameterOverridesForAllClasses(c); } - /** - * Generate fake overrides and add overridden descriptors to existing descriptors. - */ - private void generateOverridesAndDelegation(@NotNull TopDownAnalysisContext c) { - Set ourClasses = new HashSet(c.getAllClasses()); - Set processed = new HashSet(); - - for (MutableClassDescriptor klass : ContainerUtil.reverse(c.getClassesTopologicalOrder())) { - if (ourClasses.contains(klass)) { - generateOverridesAndDelegationInAClass(klass, processed, ourClasses); - - MutableClassDescriptor classObject = klass.getClassObjectDescriptor(); - if (classObject != null) { - generateOverridesAndDelegationInAClass(classObject, processed, ourClasses); - } - } - } - } - - private void generateOverridesAndDelegationInAClass( - @NotNull MutableClassDescriptor classDescriptor, - @NotNull Set processed, - @NotNull Set classesBeingAnalyzed - // to filter out classes such as stdlib and others that come from dependencies - ) { - if (!processed.add(classDescriptor)) { - return; - } - - for (JetType supertype : classDescriptor.getTypeConstructor().getSupertypes()) { - ClassDescriptor superclass = (ClassDescriptor) supertype.getConstructor().getDeclarationDescriptor(); - if (superclass instanceof MutableClassDescriptor && classesBeingAnalyzed.contains(superclass)) { - generateOverridesAndDelegationInAClass((MutableClassDescriptor) superclass, processed, classesBeingAnalyzed); - } - } - - JetClassOrObject classOrObject = (JetClassOrObject) DescriptorToSourceUtils.classDescriptorToDeclaration(classDescriptor); - if (classOrObject != null) { - DelegationResolver.generateDelegatesInAClass(classDescriptor, trace, classOrObject); - } - - generateOverridesInAClass(classDescriptor); - } - - private void generateOverridesInAClass(@NotNull final MutableClassDescriptor classDescriptor) { - generateOverridesInAClass(classDescriptor, classDescriptor.getDeclaredCallableMembers(), new OverridingUtil.DescriptorSink() { - @Override - public void addToScope(@NotNull CallableMemberDescriptor fakeOverride) { - if (fakeOverride instanceof PropertyDescriptor) { - classDescriptor.getBuilder().addPropertyDescriptor((PropertyDescriptor) fakeOverride); - } - else if (fakeOverride instanceof SimpleFunctionDescriptor) { - classDescriptor.getBuilder().addFunctionDescriptor((SimpleFunctionDescriptor) fakeOverride); - } - else { - throw new IllegalStateException(fakeOverride.getClass().getName()); - } - } - - @Override - public void conflict(@NotNull CallableMemberDescriptor fromSuper, @NotNull CallableMemberDescriptor fromCurrent) { - JetDeclaration declaration = (JetDeclaration) DescriptorToSourceUtils.descriptorToDeclaration(fromCurrent); - //noinspection ConstantConditions - trace.report(CONFLICTING_OVERLOADS.on(declaration, fromCurrent, fromCurrent.getContainingDeclaration().getName().asString())); - } - }); - - resolveUnknownVisibilities(classDescriptor.getAllCallableMembers(), trace); - } - public static void generateOverridesInAClass( @NotNull ClassDescriptor classDescriptor, @NotNull Collection membersFromCurrent,