From 09c609e765c89e9b14f3bfdb162b4896a24d2a2c Mon Sep 17 00:00:00 2001 From: "Pavel V. Talanov" Date: Wed, 3 Oct 2012 20:58:40 +0400 Subject: [PATCH] JavaDescriptorResolveData.ResolverClassData classDescriptor is private and accessed via getter --- .../java/JavaDescriptorResolveData.java | 5 +-- .../resolve/java/JavaDescriptorResolver.java | 44 +++++++++---------- .../java/JavaDescriptorSignatureResolver.java | 4 +- 3 files changed, 26 insertions(+), 27 deletions(-) diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolveData.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolveData.java index c5c41e538e1..6a183a9aa0d 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolveData.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolveData.java @@ -145,7 +145,7 @@ class JavaDescriptorResolveData { static class ResolverClassData extends ResolverScopeData { - final ClassDescriptorFromJvmBytecode classDescriptor; + private final ClassDescriptorFromJvmBytecode classDescriptor; List typeParameters; @@ -166,8 +166,7 @@ class JavaDescriptorResolveData { classDescriptor = descriptor; } - @NotNull - public ClassDescriptor getClassDescriptor() { + public ClassDescriptorFromJvmBytecode getClassDescriptor() { return classDescriptor; } diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java index 4784b0eaaf2..e2847b4dc8f 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java @@ -206,7 +206,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes } classData = createJavaClassDescriptor(psiClass, tasks); } - return classData.classDescriptor; + return classData.getClassDescriptor(); } @NotNull @@ -235,7 +235,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes containingDeclaration, kind, psiClass, fqName, this) .getResolverBinaryClassData(); classDescriptorCache.put(fqName, classData); - classData.classDescriptor.setName(name); + classData.getClassDescriptor().setName(name); List supertypes = new ArrayList(); @@ -246,11 +246,11 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes typeParameters.add(typeParameter.descriptor); } - classData.classDescriptor.setTypeParameterDescriptors(typeParameters); - classData.classDescriptor.setSupertypes(supertypes); - classData.classDescriptor.setVisibility(resolveVisibility(psiClass, JetClassAnnotation.get(psiClass))); + classData.getClassDescriptor().setTypeParameterDescriptors(typeParameters); + classData.getClassDescriptor().setSupertypes(supertypes); + classData.getClassDescriptor().setVisibility(resolveVisibility(psiClass, JetClassAnnotation.get(psiClass))); Modality modality; - if (classData.classDescriptor.getKind() == ClassKind.ANNOTATION_CLASS) { + if (classData.getClassDescriptor().getKind() == ClassKind.ANNOTATION_CLASS) { modality = Modality.FINAL; } else { @@ -258,23 +258,23 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes psiClass.hasModifierProperty(PsiModifier.ABSTRACT) || psiClass.isInterface(), !psiClass.hasModifierProperty(PsiModifier.FINAL)); } - classData.classDescriptor.setModality(modality); - classData.classDescriptor.createTypeConstructor(); - classData.classDescriptor.setScopeForMemberLookup(new JavaClassMembersScope(semanticServices, classData)); + classData.getClassDescriptor().setModality(modality); + classData.getClassDescriptor().createTypeConstructor(); + classData.getClassDescriptor().setScopeForMemberLookup(new JavaClassMembersScope(semanticServices, classData)); - javaDescriptorSignatureResolver.initializeTypeParameters(classData.typeParameters, classData.classDescriptor, "class " + qualifiedName); + javaDescriptorSignatureResolver.initializeTypeParameters(classData.typeParameters, classData.getClassDescriptor(), "class " + qualifiedName); // TODO: ugly hack: tests crash if initializeTypeParameters called with class containing proper supertypes supertypes.addAll(getSupertypes(new PsiClassWrapper(psiClass), classData, classData.getTypeParameters())); - MutableClassDescriptorLite classObject = createClassObjectDescriptor(classData.classDescriptor, psiClass); + MutableClassDescriptorLite classObject = createClassObjectDescriptor(classData.getClassDescriptor(), psiClass); if (classObject != null) { - classData.classDescriptor.getBuilder().setClassObjectDescriptor(classObject); + classData.getClassDescriptor().getBuilder().setClassObjectDescriptor(classObject); } - classData.classDescriptor.setAnnotations(resolveAnnotations(psiClass, taskList)); + classData.getClassDescriptor().setAnnotations(resolveAnnotations(psiClass, taskList)); - trace.record(BindingContext.CLASS, psiClass, classData.classDescriptor); + trace.record(BindingContext.CLASS, psiClass, classData.getClassDescriptor()); return classData; } @@ -285,7 +285,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes PsiClass psiClass = classData.getPsiClass(); - ClassDescriptorFromJvmBytecode containingClass = classData.classDescriptor; + ClassDescriptorFromJvmBytecode containingClass = classData.getClassDescriptor(); assert psiClass != null; TypeVariableResolver resolverForTypeParameters = TypeVariableResolvers.classTypeVariableResolver( containingClass, "class " + psiClass.getQualifiedName()); @@ -390,19 +390,19 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes } ConstructorDescriptorImpl constructorDescriptor = new ConstructorDescriptorImpl( - classData.classDescriptor, + classData.getClassDescriptor(), Collections.emptyList(), // TODO false); String context = "constructor of class " + psiClass.getQualifiedName(); ValueParameterDescriptors valueParameterDescriptors = resolveParameterDescriptors( constructorDescriptor, constructor.getParameters(), - TypeVariableResolvers.classTypeVariableResolver(classData.classDescriptor, context)); + TypeVariableResolvers.classTypeVariableResolver(classData.getClassDescriptor(), context)); if (valueParameterDescriptors.receiverType != null) { throw new IllegalStateException(); } - constructorDescriptor.initialize(classData.classDescriptor.getTypeConstructor().getParameters(), + constructorDescriptor.initialize(classData.getClassDescriptor().getTypeConstructor().getParameters(), valueParameterDescriptors.descriptors, resolveVisibility(psiConstructor, constructor.getJetConstructor()), aStatic); trace.record(BindingContext.CONSTRUCTOR, psiConstructor, constructorDescriptor); @@ -460,7 +460,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes containing, ClassKind.CLASS_OBJECT, classObjectPsiClass, fqName, this) .getResolverBinaryClassData(); - ClassDescriptorFromJvmBytecode classObjectDescriptor = classData.classDescriptor; + ClassDescriptorFromJvmBytecode classObjectDescriptor = classData.getClassDescriptor(); classObjectDescriptor.setSupertypes( getSupertypes(new PsiClassWrapper(classObjectPsiClass), classData, new ArrayList(0))); setUpClassObjectDescriptor(containing, fqName, classData, getClassObjectName(containing.getName())); @@ -509,7 +509,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes @NotNull ResolverClassData data, @NotNull Name classObjectName ) { - ClassDescriptorFromJvmBytecode classDescriptor = data.classDescriptor; + ClassDescriptorFromJvmBytecode classDescriptor = data.getClassDescriptor(); classDescriptorCache.put(fqName, data); classDescriptor.setName(classObjectName); classDescriptor.setModality(Modality.FINAL); @@ -562,7 +562,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes } private Collection getSupertypes(PsiClassWrapper psiClass, ResolverClassData classData, List typeParameters) { - ClassDescriptor classDescriptor = classData.classDescriptor; + ClassDescriptor classDescriptor = classData.getClassDescriptor(); final List result = new ArrayList(); @@ -1374,7 +1374,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes static Collection getSupertypes(ResolverScopeData scope) { if (scope instanceof ResolverClassData) { - return ((ResolverClassData) scope).classDescriptor.getSupertypes(); + return ((ResolverClassData) scope).getClassDescriptor().getSupertypes(); } else if (scope instanceof ResolverNamespaceData) { return Collections.emptyList(); diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorSignatureResolver.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorSignatureResolver.java index fc4fa485404..84c3f4cfd00 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorSignatureResolver.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorSignatureResolver.java @@ -318,10 +318,10 @@ public class JavaDescriptorSignatureResolver { if (jetClassAnnotation.signature().length() > 0) { return resolveClassTypeParametersFromJetSignature( - jetClassAnnotation.signature(), psiClass, classData.classDescriptor); + jetClassAnnotation.signature(), psiClass, classData.getClassDescriptor()); } - return makeUninitializedTypeParameters(classData.classDescriptor, psiClass.getTypeParameters()); + return makeUninitializedTypeParameters(classData.getClassDescriptor(), psiClass.getTypeParameters()); }