From 148d5832121f7341ddadbeaa11b11be74b937efc Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Mon, 8 Sep 2014 20:40:26 +0400 Subject: [PATCH] Drop JavaPackageFragmentProvider --- .../lazy/LazyJavaPackageFragmentProvider.kt | 10 +++---- .../LazyJavaAnnotationDescriptor.kt | 14 ++-------- .../jet/lang/resolve/java/lazy/resolvers.kt | 5 ---- .../resolver/JavaPackageFragmentProvider.java | 26 ------------------- 4 files changed, 6 insertions(+), 49 deletions(-) delete mode 100644 core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaPackageFragmentProvider.java 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 061f6d6f84d..8cb8dc82c19 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 @@ -22,13 +22,13 @@ import org.jetbrains.jet.lang.resolve.name.FqName import org.jetbrains.jet.lang.resolve.java.structure.JavaClass import org.jetbrains.jet.lang.descriptors.ClassDescriptor import org.jetbrains.jet.lang.resolve.java.lazy.descriptors.* -import org.jetbrains.jet.lang.resolve.java.resolver.JavaPackageFragmentProvider import org.jetbrains.jet.lang.resolve.kotlin.KotlinJvmBinaryClass +import org.jetbrains.jet.lang.descriptors.PackageFragmentProvider public class LazyJavaPackageFragmentProvider( outerContext: GlobalJavaResolverContext, - private val _module: ModuleDescriptor -) : JavaPackageFragmentProvider { + val module: ModuleDescriptor +) : PackageFragmentProvider { private val c = LazyJavaResolverContext( this, @@ -47,14 +47,12 @@ public class LazyJavaPackageFragmentProvider( outerContext.moduleClassResolver ) - override fun getModule() = _module - private val _packageFragments: MemoizedFunctionToNullable = c.storageManager.createMemoizedFunctionWithNullableValues { fqName -> val jPackage = c.finder.findPackage(fqName) if (jPackage != null) { - LazyJavaPackageFragment(c, _module, jPackage) + LazyJavaPackageFragment(c, module, jPackage) } else null } diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaAnnotationDescriptor.kt b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaAnnotationDescriptor.kt index 95c590a5cb4..0d2c524dacc 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaAnnotationDescriptor.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaAnnotationDescriptor.kt @@ -19,36 +19,26 @@ package org.jetbrains.jet.lang.resolve.java.lazy.descriptors import org.jetbrains.jet.lang.descriptors.annotations.AnnotationDescriptor import org.jetbrains.jet.lang.types.JetType import org.jetbrains.jet.lang.descriptors.ValueParameterDescriptor -import org.jetbrains.jet.lang.resolve.constants.CompileTimeConstant import org.jetbrains.jet.lang.resolve.java.lazy.LazyJavaResolverContextWithTypes import org.jetbrains.jet.lang.resolve.java.structure.* import org.jetbrains.jet.lang.types.ErrorUtils import org.jetbrains.jet.lang.resolve.constants.* import org.jetbrains.jet.lang.resolve.name.Name import org.jetbrains.jet.lang.resolve.name.FqName -import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns import org.jetbrains.jet.lang.descriptors.ClassDescriptor -import org.jetbrains.jet.lang.descriptors.VariableDescriptor import org.jetbrains.jet.lang.resolve.java.JvmAnnotationNames.* import org.jetbrains.jet.lang.resolve.java.JvmAnnotationNames import org.jetbrains.jet.lang.resolve.java.resolver.DescriptorResolverUtils -import org.jetbrains.jet.lang.resolve.DescriptorUtils -import org.jetbrains.jet.lang.descriptors.PropertyDescriptor import org.jetbrains.jet.lang.resolve.java.resolver.TypeUsage import org.jetbrains.jet.lang.types.TypeProjectionImpl -import org.jetbrains.jet.lang.types.JetTypeImpl -import org.jetbrains.jet.lang.types.TypeConstructor -import org.jetbrains.jet.lang.types.TypeProjection -import org.jetbrains.jet.lang.resolve.scopes.JetScope import org.jetbrains.jet.lang.resolve.java.lazy.types.LazyJavaType import org.jetbrains.jet.utils.valuesToMap -import org.jetbrains.jet.utils.keysToMap import org.jetbrains.jet.utils.keysToMapExceptNulls import org.jetbrains.jet.lang.resolve.java.lazy.types.toAttributes import org.jetbrains.jet.renderer.DescriptorRenderer import org.jetbrains.jet.lang.resolve.java.mapping.JavaToKotlinClassMap import org.jetbrains.jet.lang.types.TypeUtils -import org.jetbrains.jet.lang.resolve.java.lazy.resolveTopLevelClassInModule +import org.jetbrains.jet.lang.resolve.resolveTopLevelClass private object DEPRECATED_IN_JAVA : JavaLiteralAnnotationArgument { override fun getName(): Name? = null @@ -162,7 +152,7 @@ class LazyJavaAnnotationDescriptor( // Class type is never nullable in 'Foo.class' in Java val `type` = TypeUtils.makeNotNullable(c.typeResolver.transformJavaType(javaType, TypeUsage.MEMBER_SIGNATURE_INVARIANT.toAttributes())) - val jlClass = c.resolveTopLevelClassInModule(FqName("java.lang.Class")) + val jlClass = c.packageFragmentProvider.module.resolveTopLevelClass(FqName("java.lang.Class")) if (jlClass == null) return null val arguments = listOf(TypeProjectionImpl(`type`)) diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/resolvers.kt b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/resolvers.kt index 58b1db2a451..3e8f0e47ada 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/resolvers.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/resolvers.kt @@ -25,7 +25,6 @@ import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor import org.jetbrains.jet.lang.resolve.name.FqName import org.jetbrains.jet.lang.resolve.kotlin.header.KotlinClassHeader import org.jetbrains.jet.lang.resolve.kotlin.KotlinJvmBinaryClass -import org.jetbrains.jet.lang.resolve.resolveTopLevelClass //TODO: (module refactoring) usages of this interface should be replaced by ModuleClassResolver trait LazyJavaClassResolver { @@ -106,7 +105,3 @@ private fun LazyJavaResolverContext.resolveBinaryClass(kotlinClass: KotlinJvmBin return null } - -fun LazyJavaResolverContext.resolveTopLevelClassInModule(fqName: FqName): ClassDescriptor? { - return packageFragmentProvider.getModule().resolveTopLevelClass(fqName) -} \ No newline at end of file diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaPackageFragmentProvider.java b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaPackageFragmentProvider.java deleted file mode 100644 index 7ed523884ac..00000000000 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/resolver/JavaPackageFragmentProvider.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright 2010-2013 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.resolver; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.jet.lang.descriptors.ModuleDescriptor; -import org.jetbrains.jet.lang.descriptors.PackageFragmentProvider; - -public interface JavaPackageFragmentProvider extends PackageFragmentProvider { - @NotNull - ModuleDescriptor getModule(); -}