diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaClassMemberScope.kt b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaClassMemberScope.kt index e0176530b46..e8eb2dfe12c 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaClassMemberScope.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaClassMemberScope.kt @@ -37,7 +37,6 @@ import org.jetbrains.jet.lang.resolve.java.descriptor.JavaConstructorDescriptor import org.jetbrains.jet.lang.resolve.java.resolver.DescriptorResolverUtils import org.jetbrains.jet.lang.types.JetType import org.jetbrains.jet.lang.resolve.java.lazy.descriptors.LazyJavaMemberScope.MethodSignatureData -import org.jetbrains.jet.lang.resolve.java.PLATFORM_TYPES public class LazyJavaClassMemberScope( c: LazyJavaResolverContextWithTypes, @@ -85,8 +84,6 @@ public class LazyJavaClassMemberScope( c.errorReporter)) } - override fun computeAdditionalFunctions(name: Name) = listOf() - private fun getPropertiesFromSupertypes(name: Name, descriptor: ClassDescriptor): Set { return descriptor.getTypeConstructor().getSupertypes().flatMap { it.getMemberScope().getProperties(name).map { p -> p as PropertyDescriptor } diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaMemberScope.kt b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaMemberScope.kt index 118834e6ac9..dfb0dbaab11 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaMemberScope.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaMemberScope.kt @@ -72,8 +72,6 @@ public abstract class LazyJavaMemberScope( protected abstract fun getDispatchReceiverParameter(): ReceiverParameterDescriptor? - protected abstract fun computeAdditionalFunctions(name: Name): Collection - private val _functions = c.storageManager.createMemoizedFunction { (name: Name): Collection -> val methods = memberIndex().findMethodsByName(name) @@ -88,7 +86,6 @@ public abstract class LazyJavaMemberScope( else listOf(function).stream() } - .plus(computeAdditionalFunctions(name)) .toList() ) diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaStaticScope.kt b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaStaticScope.kt index 090ac18d04f..10760f47faa 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaStaticScope.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaStaticScope.kt @@ -110,8 +110,6 @@ public class LazyPackageFragmentScopeForJavaPackage( override fun getAllMethodNames(): Collection = getAllClassNames() } - override fun computeAdditionalFunctions(name: Name) = listOf() - override fun getAllClassNames(): Collection { return jPackage.getClasses().stream() .filter { c -> c.getOriginKind() != JavaClass.OriginKind.KOTLIN_LIGHT_CLASS } @@ -160,16 +158,6 @@ public class LazyJavaStaticClassScope( return super.getAllFunctionNames() } - override fun computeAdditionalFunctions(name: Name): Collection { - if (jClass.isEnum()) { - when (name) { - DescriptorUtils.ENUM_VALUE_OF -> return listOf(createEnumValueOfMethod(getContainingDeclaration())) - DescriptorUtils.ENUM_VALUES -> return listOf(createEnumValuesMethod(getContainingDeclaration())) - } - } - return listOf() - } - override fun getAllClassNames(): Collection = listOf() override fun getClassifier(name: Name): ClassifierDescriptor? = null @@ -178,6 +166,13 @@ public class LazyJavaStaticClassScope( override fun computeNonDeclaredFunctions(result: MutableCollection, name: Name) { val nestedClassesScope = getContainingDeclaration().getUnsubstitutedInnerClassesScope() result.addIfNotNull(c.samConversionResolver.resolveSamConstructor(name, nestedClassesScope)) + + if (jClass.isEnum()) { + when (name) { + DescriptorUtils.ENUM_VALUE_OF -> result.add(createEnumValueOfMethod(getContainingDeclaration())) + DescriptorUtils.ENUM_VALUES -> result.add(createEnumValuesMethod(getContainingDeclaration())) + } + } } override fun getContainingDeclaration() = super.getContainingDeclaration() as LazyJavaClassDescriptor