Minor, merge two sematically identical functions
This commit is contained in:
-3
@@ -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.resolve.java.resolver.DescriptorResolverUtils
|
||||||
import org.jetbrains.jet.lang.types.JetType
|
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.lazy.descriptors.LazyJavaMemberScope.MethodSignatureData
|
||||||
import org.jetbrains.jet.lang.resolve.java.PLATFORM_TYPES
|
|
||||||
|
|
||||||
public class LazyJavaClassMemberScope(
|
public class LazyJavaClassMemberScope(
|
||||||
c: LazyJavaResolverContextWithTypes,
|
c: LazyJavaResolverContextWithTypes,
|
||||||
@@ -85,8 +84,6 @@ public class LazyJavaClassMemberScope(
|
|||||||
c.errorReporter))
|
c.errorReporter))
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun computeAdditionalFunctions(name: Name) = listOf<SimpleFunctionDescriptor>()
|
|
||||||
|
|
||||||
private fun getPropertiesFromSupertypes(name: Name, descriptor: ClassDescriptor): Set<PropertyDescriptor> {
|
private fun getPropertiesFromSupertypes(name: Name, descriptor: ClassDescriptor): Set<PropertyDescriptor> {
|
||||||
return descriptor.getTypeConstructor().getSupertypes().flatMap {
|
return descriptor.getTypeConstructor().getSupertypes().flatMap {
|
||||||
it.getMemberScope().getProperties(name).map { p -> p as PropertyDescriptor }
|
it.getMemberScope().getProperties(name).map { p -> p as PropertyDescriptor }
|
||||||
|
|||||||
-3
@@ -72,8 +72,6 @@ public abstract class LazyJavaMemberScope(
|
|||||||
|
|
||||||
protected abstract fun getDispatchReceiverParameter(): ReceiverParameterDescriptor?
|
protected abstract fun getDispatchReceiverParameter(): ReceiverParameterDescriptor?
|
||||||
|
|
||||||
protected abstract fun computeAdditionalFunctions(name: Name): Collection<SimpleFunctionDescriptor>
|
|
||||||
|
|
||||||
private val _functions = c.storageManager.createMemoizedFunction {
|
private val _functions = c.storageManager.createMemoizedFunction {
|
||||||
(name: Name): Collection<FunctionDescriptor> ->
|
(name: Name): Collection<FunctionDescriptor> ->
|
||||||
val methods = memberIndex().findMethodsByName(name)
|
val methods = memberIndex().findMethodsByName(name)
|
||||||
@@ -88,7 +86,6 @@ public abstract class LazyJavaMemberScope(
|
|||||||
else
|
else
|
||||||
listOf(function).stream()
|
listOf(function).stream()
|
||||||
}
|
}
|
||||||
.plus(computeAdditionalFunctions(name))
|
|
||||||
.toList()
|
.toList()
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
+7
-12
@@ -110,8 +110,6 @@ public class LazyPackageFragmentScopeForJavaPackage(
|
|||||||
override fun getAllMethodNames(): Collection<Name> = getAllClassNames()
|
override fun getAllMethodNames(): Collection<Name> = getAllClassNames()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun computeAdditionalFunctions(name: Name) = listOf<SimpleFunctionDescriptor>()
|
|
||||||
|
|
||||||
override fun getAllClassNames(): Collection<Name> {
|
override fun getAllClassNames(): Collection<Name> {
|
||||||
return jPackage.getClasses().stream()
|
return jPackage.getClasses().stream()
|
||||||
.filter { c -> c.getOriginKind() != JavaClass.OriginKind.KOTLIN_LIGHT_CLASS }
|
.filter { c -> c.getOriginKind() != JavaClass.OriginKind.KOTLIN_LIGHT_CLASS }
|
||||||
@@ -160,16 +158,6 @@ public class LazyJavaStaticClassScope(
|
|||||||
return super.getAllFunctionNames()
|
return super.getAllFunctionNames()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun computeAdditionalFunctions(name: Name): Collection<SimpleFunctionDescriptor> {
|
|
||||||
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<Name> = listOf()
|
override fun getAllClassNames(): Collection<Name> = listOf()
|
||||||
override fun getClassifier(name: Name): ClassifierDescriptor? = null
|
override fun getClassifier(name: Name): ClassifierDescriptor? = null
|
||||||
|
|
||||||
@@ -178,6 +166,13 @@ public class LazyJavaStaticClassScope(
|
|||||||
override fun computeNonDeclaredFunctions(result: MutableCollection<SimpleFunctionDescriptor>, name: Name) {
|
override fun computeNonDeclaredFunctions(result: MutableCollection<SimpleFunctionDescriptor>, name: Name) {
|
||||||
val nestedClassesScope = getContainingDeclaration().getUnsubstitutedInnerClassesScope()
|
val nestedClassesScope = getContainingDeclaration().getUnsubstitutedInnerClassesScope()
|
||||||
result.addIfNotNull(c.samConversionResolver.resolveSamConstructor(name, nestedClassesScope))
|
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
|
override fun getContainingDeclaration() = super.getContainingDeclaration() as LazyJavaClassDescriptor
|
||||||
|
|||||||
Reference in New Issue
Block a user