From e9f102f3e6a4621e1b1c9754985bedf630300fcf Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Wed, 20 Nov 2013 19:48:17 +0400 Subject: [PATCH] Pull up getClassObjectType() --- .../descriptors/DeserializedClassDescriptor.java | 7 ------- .../resolve/lazy/descriptors/LazyClassDescriptor.java | 6 ------ .../lang/descriptors/impl/AbstractClassDescriptor.java | 8 ++++++++ .../descriptors/impl/MutableClassDescriptorLite.java | 10 ---------- 4 files changed, 8 insertions(+), 23 deletions(-) diff --git a/compiler/frontend/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedClassDescriptor.java b/compiler/frontend/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedClassDescriptor.java index 0bf7bd5ede1..ab9098972d7 100644 --- a/compiler/frontend/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedClassDescriptor.java +++ b/compiler/frontend/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedClassDescriptor.java @@ -243,13 +243,6 @@ public class DeserializedClassDescriptor extends AbstractClassDescriptor impleme return Collections.singletonList(constructor); } - @Nullable - @Override - public JetType getClassObjectType() { - ClassDescriptor classObjectDescriptor = getClassObjectDescriptor(); - return classObjectDescriptor == null ? null : classObjectDescriptor.getDefaultType(); - } - @Nullable private ClassDescriptor computeClassObjectDescriptor() { if (!classProto.getClassObjectPresent()) { diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/descriptors/LazyClassDescriptor.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/descriptors/LazyClassDescriptor.java index 7d8eb310ece..9dfa9636005 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/descriptors/LazyClassDescriptor.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/descriptors/LazyClassDescriptor.java @@ -260,12 +260,6 @@ public class LazyClassDescriptor extends ClassDescriptorBase implements LazyDesc return typeConstructor; } - @Override - public JetType getClassObjectType() { - ClassDescriptor classObjectDescriptor = getClassObjectDescriptor(); - return classObjectDescriptor == null ? null : classObjectDescriptor.getDefaultType(); - } - @Override public ClassDescriptor getClassObjectDescriptor() { return classObjectDescriptor.invoke(); diff --git a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/AbstractClassDescriptor.java b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/AbstractClassDescriptor.java index 7948fd3f480..e206de42276 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/AbstractClassDescriptor.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/AbstractClassDescriptor.java @@ -18,6 +18,7 @@ package org.jetbrains.jet.lang.descriptors.impl; import jet.Function0; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.ClassDescriptor; import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor; import org.jetbrains.jet.lang.descriptors.DeclarationDescriptorVisitor; @@ -61,6 +62,13 @@ public abstract class AbstractClassDescriptor implements ClassDescriptor { @NotNull protected abstract JetScope getScopeForMemberLookup(); + @Nullable + @Override + public JetType getClassObjectType() { + ClassDescriptor classObject = getClassObjectDescriptor(); + return classObject == null ? null : classObject.getDefaultType(); + } + @NotNull @Override public JetScope getMemberScope(List typeArguments) { diff --git a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/MutableClassDescriptorLite.java b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/MutableClassDescriptorLite.java index 52cc54120f6..e634359005c 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/MutableClassDescriptorLite.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/MutableClassDescriptorLite.java @@ -53,7 +53,6 @@ public abstract class MutableClassDescriptorLite extends ClassDescriptorBase { private final boolean isInner; private MutableClassDescriptorLite classObjectDescriptor; - private JetType classObjectType; private final ClassKind kind; private JetScope scopeForMemberLookup; @@ -98,21 +97,12 @@ public abstract class MutableClassDescriptorLite extends ClassDescriptorBase { return (WritableScope) scopeForMemberLookup; } - @Override @NotNull public JetScope getScopeForMemberLookup() { return scopeForMemberLookup; } - @Override - public JetType getClassObjectType() { - if (classObjectType == null && classObjectDescriptor != null) { - classObjectType = classObjectDescriptor.getDefaultType(); - } - return classObjectType; - } - @NotNull @Override public ClassKind getKind() {