Add ClassDescriptor#isDefaultObject()

with dummy implementations for now
This commit is contained in:
Pavel V. Talanov
2015-03-04 16:24:13 +03:00
parent 63acb19413
commit f72f548a93
8 changed files with 31 additions and 0 deletions
@@ -143,6 +143,11 @@ public class MutableClassDescriptor extends ClassDescriptorBase implements Class
return isInner;
}
@Override
public boolean isDefaultObject() {
return getKind() == ClassKind.CLASS_OBJECT;
}
@NotNull
@Override
public TypeConstructor getTypeConstructor() {
@@ -439,6 +439,11 @@ public class LazyClassDescriptor extends ClassDescriptorBase implements ClassDes
return isInner;
}
@Override
public boolean isDefaultObject() {
return getKind() == ClassKind.CLASS_OBJECT;
}
@NotNull
@Override
public Annotations getAnnotations() {
@@ -100,6 +100,8 @@ class LazyJavaClassDescriptor(
override fun getFunctionTypeForSamInterface(): JetType? = functionTypeForSamInterface()
override fun isDefaultObject() = false
override fun toString() = "lazy java class $fqName"
private inner class LazyJavaClassTypeConstructor : AbstractClassTypeConstructor() {
@@ -82,6 +82,8 @@ public interface ClassDescriptor extends ClassifierDescriptor, MemberDescriptor,
*/
boolean isInner();
boolean isDefaultObject();
@NotNull
ReceiverParameterDescriptor getThisAsReceiverParameter();
@@ -111,6 +111,11 @@ public class ClassDescriptorImpl extends ClassDescriptorBase {
return ClassKind.CLASS;
}
@Override
public boolean isDefaultObject() {
return false;
}
@Override
public ConstructorDescriptor getUnsubstitutedPrimaryConstructor() {
return primaryConstructor;
@@ -142,6 +142,11 @@ public class EnumEntrySyntheticClassDescriptor extends ClassDescriptorBase {
return false;
}
@Override
public boolean isDefaultObject() {
return false;
}
@Nullable
@Override
public ConstructorDescriptor getUnsubstitutedPrimaryConstructor() {
@@ -196,6 +196,11 @@ public class LazySubstitutingClassDescriptor implements ClassDescriptor {
return original.isInner();
}
@Override
public boolean isDefaultObject() {
return original.isDefaultObject();
}
@Override
public <R, D> R accept(DeclarationDescriptorVisitor<R, D> visitor, D data) {
return visitor.visitClassDescriptor(this, data);
@@ -88,6 +88,8 @@ public class DeserializedClassDescriptor(
override fun getStaticScope() = staticScope
override fun isDefaultObject(): Boolean = getKind() == ClassKind.CLASS_OBJECT
private fun computePrimaryConstructor(): ConstructorDescriptor? {
if (!classProto.hasPrimaryConstructor()) return null