From 4bd603818a1054a728c7ea3457b41424256f4a56 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Mon, 8 Sep 2014 20:45:53 +0400 Subject: [PATCH] Drop LazyJavaDescriptor, JavaPackageFragmentDescriptor --- .../jetbrains/jet/codegen/JvmCodegenUtil.java | 17 ++++++--------- .../JavaPackageFragmentDescriptor.kt | 21 ------------------- .../lazy/LazyJavaPackageFragmentProvider.kt | 2 +- .../descriptors/LazyJavaClassDescriptor.kt | 2 +- .../lazy/descriptors/LazyJavaDescriptor.kt | 21 ------------------- .../descriptors/LazyJavaPackageFragment.kt | 7 +------ 6 files changed, 9 insertions(+), 61 deletions(-) delete mode 100644 core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/descriptor/JavaPackageFragmentDescriptor.kt delete mode 100644 core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaDescriptor.kt diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/JvmCodegenUtil.java b/compiler/backend/src/org/jetbrains/jet/codegen/JvmCodegenUtil.java index ec243a4e436..08003f2c108 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/JvmCodegenUtil.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/JvmCodegenUtil.java @@ -35,12 +35,10 @@ import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.codeFragmentUtil.CodeFragmentUtilPackage; import org.jetbrains.jet.lang.resolve.DescriptorToSourceUtils; import org.jetbrains.jet.lang.resolve.DescriptorUtils; -import org.jetbrains.jet.lang.resolve.java.descriptor.JavaPackageFragmentDescriptor; -import org.jetbrains.jet.lang.resolve.java.lazy.descriptors.LazyPackageFragmentScopeForJavaPackage; +import org.jetbrains.jet.lang.resolve.java.lazy.descriptors.LazyJavaPackageFragment; import org.jetbrains.jet.lang.resolve.kotlin.KotlinJvmBinaryClass; import org.jetbrains.jet.lang.resolve.kotlin.VirtualFileKotlinClass; import org.jetbrains.jet.lang.resolve.kotlin.incremental.IncrementalPackageFragmentProvider; -import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns; @@ -128,7 +126,8 @@ public class JvmCodegenUtil { @NotNull DeserializedCallableMemberDescriptor descriptor, @Nullable File outDirectory ) { - if (descriptor.getContainingDeclaration() instanceof IncrementalPackageFragmentProvider.IncrementalPackageFragment) { + DeclarationDescriptor packageFragment = descriptor.getContainingDeclaration(); + if (packageFragment instanceof IncrementalPackageFragmentProvider.IncrementalPackageFragment) { return true; } @@ -136,16 +135,11 @@ public class JvmCodegenUtil { return false; } - if (!(descriptor.getContainingDeclaration() instanceof JavaPackageFragmentDescriptor)) { + if (!(packageFragment instanceof LazyJavaPackageFragment)) { return false; } - JavaPackageFragmentDescriptor packageFragment = (JavaPackageFragmentDescriptor) descriptor.getContainingDeclaration(); - JetScope packageScope = packageFragment.getMemberScope(); - if (!(packageScope instanceof LazyPackageFragmentScopeForJavaPackage)) { - return false; - } - KotlinJvmBinaryClass binaryClass = ((LazyPackageFragmentScopeForJavaPackage) packageScope).getKotlinBinaryClass(); + KotlinJvmBinaryClass binaryClass = ((LazyJavaPackageFragment) packageFragment).getMemberScope().getKotlinBinaryClass(); if (binaryClass instanceof VirtualFileKotlinClass) { VirtualFile file = ((VirtualFileKotlinClass) binaryClass).getFile(); if (file.getFileSystem().getProtocol() == StandardFileSystems.FILE_PROTOCOL) { @@ -153,6 +147,7 @@ public class JvmCodegenUtil { return ioFile.getAbsolutePath().startsWith(outDirectory.getAbsolutePath() + File.separator); } } + return false; } diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/descriptor/JavaPackageFragmentDescriptor.kt b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/descriptor/JavaPackageFragmentDescriptor.kt deleted file mode 100644 index cfdcd1d7fd6..00000000000 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/descriptor/JavaPackageFragmentDescriptor.kt +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright 2010-2014 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.jet.lang.resolve.java.descriptor - -import org.jetbrains.jet.lang.descriptors.PackageFragmentDescriptor - -public trait JavaPackageFragmentDescriptor : PackageFragmentDescriptor diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/LazyJavaPackageFragmentProvider.kt b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/LazyJavaPackageFragmentProvider.kt index 8cb8dc82c19..3e99182c5e6 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/LazyJavaPackageFragmentProvider.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/LazyJavaPackageFragmentProvider.kt @@ -52,7 +52,7 @@ public class LazyJavaPackageFragmentProvider( fqName -> val jPackage = c.finder.findPackage(fqName) if (jPackage != null) { - LazyJavaPackageFragment(c, module, jPackage) + LazyJavaPackageFragment(c, jPackage) } else null } diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaClassDescriptor.kt b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaClassDescriptor.kt index fb1d52c479c..4bb826bb1f6 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaClassDescriptor.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaClassDescriptor.kt @@ -46,7 +46,7 @@ class LazyJavaClassDescriptor( internal val fqName: FqName, private val jClass: JavaClass ) : ClassDescriptorBase(outerC.storageManager, containingDeclaration, fqName.shortName(), - outerC.sourceElementFactory.source(jClass)), LazyJavaDescriptor, JavaClassDescriptor { + outerC.sourceElementFactory.source(jClass)), JavaClassDescriptor { private val c: LazyJavaResolverContextWithTypes = outerC.child(this, jClass.getTypeParameters().toSet()); diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaDescriptor.kt b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaDescriptor.kt deleted file mode 100644 index 450f0a94c22..00000000000 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaDescriptor.kt +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright 2010-2014 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.jet.lang.resolve.java.lazy.descriptors - -import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor - -public trait LazyJavaDescriptor : DeclarationDescriptor \ No newline at end of file diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaPackageFragment.kt b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaPackageFragment.kt index d542ff6a447..ba194495b90 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaPackageFragment.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaPackageFragment.kt @@ -18,18 +18,13 @@ package org.jetbrains.jet.lang.resolve.java.lazy.descriptors import org.jetbrains.jet.lang.resolve.java.lazy.LazyJavaResolverContext import org.jetbrains.jet.lang.resolve.java.structure.JavaPackage -import org.jetbrains.jet.lang.resolve.java.descriptor.JavaPackageFragmentDescriptor -import org.jetbrains.jet.lang.descriptors.ModuleDescriptor import org.jetbrains.jet.lang.descriptors.impl.PackageFragmentDescriptorImpl import kotlin.properties.Delegates class LazyJavaPackageFragment( private val c: LazyJavaResolverContext, - module: ModuleDescriptor, private val jPackage: JavaPackage -) : PackageFragmentDescriptorImpl(module, jPackage.getFqName()), - JavaPackageFragmentDescriptor, LazyJavaDescriptor -{ +) : PackageFragmentDescriptorImpl(c.packageFragmentProvider.module, jPackage.getFqName()) { private val _memberScope by Delegates.lazy { LazyPackageFragmentScopeForJavaPackage(c, jPackage, this) } override fun getMemberScope() = _memberScope