diff --git a/core/serialization/src/org/jetbrains/jet/descriptors/serialization/context/context.kt b/core/serialization/src/org/jetbrains/jet/descriptors/serialization/context/context.kt index 85d6f1d2c73..3ba9e7cc5a1 100644 --- a/core/serialization/src/org/jetbrains/jet/descriptors/serialization/context/context.kt +++ b/core/serialization/src/org/jetbrains/jet/descriptors/serialization/context/context.kt @@ -31,12 +31,6 @@ import org.jetbrains.jet.descriptors.serialization.descriptors.ConstantLoader import org.jetbrains.jet.lang.descriptors.ModuleDescriptor import org.jetbrains.jet.lang.descriptors.ClassDescriptor import org.jetbrains.jet.descriptors.serialization.ClassId -import org.jetbrains.jet.lang.descriptors.PackageViewDescriptor -import org.jetbrains.jet.lang.resolve.scopes.JetScope -import org.jetbrains.jet.lang.resolve.name.FqNameUnsafe -import org.jetbrains.jet.lang.resolve.name.Name -import org.jetbrains.jet.lang.resolve.name.SpecialNames -import org.jetbrains.jet.lang.descriptors.ClassifierDescriptor public open class DeserializationGlobalContext( public val storageManager: StorageManager, @@ -110,3 +104,7 @@ class DeserializationContextWithTypes( } } + +fun DeserializationGlobalContext.deserializeClass(classId: ClassId): ClassDescriptor? { + return descriptorFinder.findClass(classId) +} diff --git a/core/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedClassDescriptor.java b/core/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedClassDescriptor.java index a8542e1e41a..3bc9b0e1b54 100644 --- a/core/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedClassDescriptor.java +++ b/core/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedClassDescriptor.java @@ -22,6 +22,7 @@ import kotlin.KotlinPackage; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.descriptors.serialization.*; +import org.jetbrains.jet.descriptors.serialization.context.ContextPackage; import org.jetbrains.jet.descriptors.serialization.context.DeserializationContext; import org.jetbrains.jet.descriptors.serialization.context.DeserializationContextWithTypes; import org.jetbrains.jet.descriptors.serialization.context.DeserializationGlobalContext; @@ -141,7 +142,7 @@ public class DeserializedClassDescriptor extends AbstractClassDescriptor impleme return fragments.iterator().next(); } else { - ClassDescriptor result = context.getDescriptorFinder().findClass(classId.getOuterClassId()); + ClassDescriptor result = ContextPackage.deserializeClass(context, classId.getOuterClassId()); return result != null ? result : ErrorUtils.getErrorModule(); } } @@ -245,7 +246,7 @@ public class DeserializedClassDescriptor extends AbstractClassDescriptor impleme return new DeserializedClassDescriptor(context, classObjectProto.getData()); } - return context.getDescriptorFinder().findClass(classId.createNestedClassId(getClassObjectName(getName()))); + return ContextPackage.deserializeClass(context, classId.createNestedClassId(getClassObjectName(getName()))); } @NotNull @@ -488,7 +489,7 @@ public class DeserializedClassDescriptor extends AbstractClassDescriptor impleme .create(storageManager, DeserializedClassDescriptor.this, name, enumMemberNames); } if (nestedClassNames.contains(name)) { - return context.getDescriptorFinder().findClass(classId.createNestedClassId(name)); + return ContextPackage.deserializeClass(context, classId.createNestedClassId(name)); } return null; } diff --git a/core/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedPackageMemberScope.java b/core/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedPackageMemberScope.java index a4569fdacfc..b0f0cbf6c48 100644 --- a/core/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedPackageMemberScope.java +++ b/core/serialization/src/org/jetbrains/jet/descriptors/serialization/descriptors/DeserializedPackageMemberScope.java @@ -21,6 +21,7 @@ import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.descriptors.serialization.ClassId; import org.jetbrains.jet.descriptors.serialization.PackageData; import org.jetbrains.jet.descriptors.serialization.ProtoBuf; +import org.jetbrains.jet.descriptors.serialization.context.ContextPackage; import org.jetbrains.jet.descriptors.serialization.context.DeserializationContext; import org.jetbrains.jet.descriptors.serialization.context.DeserializationGlobalContext; import org.jetbrains.jet.lang.descriptors.ClassDescriptor; @@ -58,7 +59,7 @@ public class DeserializedPackageMemberScope extends DeserializedMemberScope { @Nullable @Override protected ClassDescriptor getClassDescriptor(@NotNull Name name) { - return context.getDescriptorFinder().findClass(new ClassId(packageFqName, FqNameUnsafe.topLevel(name))); + return ContextPackage.deserializeClass(context, new ClassId(packageFqName, FqNameUnsafe.topLevel(name))); } @Override