diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/DescriptorResolverUtils.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/DescriptorResolverUtils.java index 9dbe9f4c344..f9103e9e371 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/DescriptorResolverUtils.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/DescriptorResolverUtils.java @@ -24,9 +24,6 @@ import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.descriptors.annotations.AnnotationDescriptor; import org.jetbrains.jet.lang.resolve.constants.StringValue; -import org.jetbrains.jet.lang.resolve.java.data.ResolverClassData; -import org.jetbrains.jet.lang.resolve.java.data.ResolverNamespaceData; -import org.jetbrains.jet.lang.resolve.java.data.ResolverScopeData; import org.jetbrains.jet.lang.resolve.java.kt.PsiAnnotationWithFlags; import org.jetbrains.jet.lang.resolve.java.wrapper.PsiClassWrapper; import org.jetbrains.jet.lang.resolve.java.wrapper.PsiMemberWrapper; @@ -63,16 +60,11 @@ public final class DescriptorResolverUtils { return kind == ClassKind.CLASS || kind == ClassKind.TRAIT || kind == ClassKind.ENUM_CLASS; } - public static Collection getSupertypes(@NotNull ResolverScopeData scope) { - if (scope instanceof ResolverClassData) { - return ((ResolverClassData) scope).getClassDescriptor().getSupertypes(); - } - else if (scope instanceof ResolverNamespaceData) { - return Collections.emptyList(); - } - else { - throw new IllegalStateException(); + public static Collection getSupertypes(@NotNull ClassOrNamespaceDescriptor classOrNamespaceDescriptor) { + if (classOrNamespaceDescriptor instanceof ClassDescriptor) { + return ((ClassDescriptor) classOrNamespaceDescriptor).getTypeConstructor().getSupertypes(); } + return Collections.emptyList(); } public static Modality resolveModality(PsiMemberWrapper memberWrapper, boolean isFinal) { diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaFunctionResolver.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaFunctionResolver.java index 8e7aed50136..7c474d5cdf3 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaFunctionResolver.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaFunctionResolver.java @@ -264,7 +264,7 @@ public final class JavaFunctionResolver { Name methodName ) { Set r = Sets.newLinkedHashSet(); - for (JetType supertype : DescriptorResolverUtils.getSupertypes(scopeData)) { + for (JetType supertype : DescriptorResolverUtils.getSupertypes(scopeData.getClassOrNamespaceDescriptor())) { for (FunctionDescriptor function : supertype.getMemberScope().getFunctions(methodName)) { r.add((SimpleFunctionDescriptor) function); } diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaPropertyResolver.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaPropertyResolver.java index 365a1d0f323..5ccee87dc1b 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaPropertyResolver.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaPropertyResolver.java @@ -432,7 +432,7 @@ public final class JavaPropertyResolver { @NotNull private static Set getPropertiesFromSupertypes(ResolverScopeData scopeData, Name propertyName) { Set r = new HashSet(); - for (JetType supertype : DescriptorResolverUtils.getSupertypes(scopeData)) { + for (JetType supertype : DescriptorResolverUtils.getSupertypes(scopeData.getClassOrNamespaceDescriptor())) { for (VariableDescriptor property : supertype.getMemberScope().getProperties(propertyName)) { r.add((PropertyDescriptor) property); }