Add JetType.isError()
Instead of ErrorUtils.isErrorType() which does several instanceof checks anyway
This commit is contained in:
+5
-2
@@ -19,7 +19,10 @@ package org.jetbrains.jet.descriptors.serialization;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.jet.lang.descriptors.*;
|
||||
import org.jetbrains.jet.lang.descriptors.annotations.Annotated;
|
||||
import org.jetbrains.jet.lang.types.*;
|
||||
import org.jetbrains.jet.lang.types.JetType;
|
||||
import org.jetbrains.jet.lang.types.TypeConstructor;
|
||||
import org.jetbrains.jet.lang.types.TypeProjection;
|
||||
import org.jetbrains.jet.lang.types.Variance;
|
||||
import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns;
|
||||
import org.jetbrains.jet.renderer.DescriptorRenderer;
|
||||
|
||||
@@ -325,7 +328,7 @@ public class DescriptorSerializer {
|
||||
|
||||
@NotNull
|
||||
public ProtoBuf.Type.Builder type(@NotNull JetType type) {
|
||||
assert !ErrorUtils.isErrorType(type) : "Can't serialize error types: " + type; // TODO
|
||||
assert !type.isError() : "Can't serialize error types: " + type; // TODO
|
||||
|
||||
ProtoBuf.Type.Builder builder = ProtoBuf.Type.newBuilder();
|
||||
|
||||
|
||||
+11
-5
@@ -26,7 +26,9 @@ import org.jetbrains.jet.lang.descriptors.ClassDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.ClassifierDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.TypeParameterDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.annotations.AnnotationDescriptor;
|
||||
import org.jetbrains.jet.lang.resolve.lazy.storage.*;
|
||||
import org.jetbrains.jet.lang.resolve.lazy.storage.MemoizedFunctionToNullable;
|
||||
import org.jetbrains.jet.lang.resolve.lazy.storage.NotNullLazyValue;
|
||||
import org.jetbrains.jet.lang.resolve.lazy.storage.StorageManager;
|
||||
import org.jetbrains.jet.lang.resolve.scopes.JetScope;
|
||||
import org.jetbrains.jet.lang.types.*;
|
||||
import org.jetbrains.jet.lang.types.checker.JetTypeChecker;
|
||||
@@ -241,12 +243,11 @@ public class TypeDeserializer {
|
||||
|
||||
@NotNull
|
||||
private JetScope computeMemberScope() {
|
||||
TypeConstructor typeConstructor = getConstructor();
|
||||
if (ErrorUtils.isError(typeConstructor)) {
|
||||
return ErrorUtils.createErrorScope(typeConstructor.toString());
|
||||
if (isError()) {
|
||||
return ErrorUtils.createErrorScope(getConstructor().toString());
|
||||
}
|
||||
else {
|
||||
return getTypeMemberScope(typeConstructor, getArguments());
|
||||
return getTypeMemberScope(getConstructor(), getArguments());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -256,6 +257,11 @@ public class TypeDeserializer {
|
||||
return memberScope.compute();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isError() {
|
||||
return ErrorUtils.isError(getConstructor());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AnnotationDescriptor> getAnnotations() {
|
||||
return Collections.emptyList();
|
||||
|
||||
Reference in New Issue
Block a user