diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/AllUnderImportsScope.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/AllUnderImportsScope.kt index 733dc6b358c..93ca5cf133c 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/AllUnderImportsScope.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/AllUnderImportsScope.kt @@ -43,15 +43,15 @@ class AllUnderImportsScope : JetScope { } override fun getClassifier(name: Name, location: UsageLocation): ClassifierDescriptor? { - return scopes.asSequence().map { it.getClassifier(name) }.filterNotNull().singleOrNull() + return scopes.asSequence().map { it.getClassifier(name, location) }.filterNotNull().singleOrNull() } override fun getProperties(name: Name, location: UsageLocation): Collection { - return scopes.flatMap { it.getProperties(name) } + return scopes.flatMap { it.getProperties(name, location) } } override fun getFunctions(name: Name, location: UsageLocation): Collection { - return scopes.flatMap { it.getFunctions(name) } + return scopes.flatMap { it.getFunctions(name, location) } } override fun getSyntheticExtensionProperties(receiverTypes: Collection, name: Name): Collection { diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/LazyImportScope.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/LazyImportScope.kt index 19a57427152..3042f958a76 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/LazyImportScope.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/LazyImportScope.kt @@ -236,7 +236,7 @@ class LazyImportScope( override fun getClassifier(name: Name, location: UsageLocation): ClassifierDescriptor? { return importResolver.selectSingleFromImports(name, LookupMode.ONLY_CLASSES_AND_PACKAGES) { scope, name -> - val descriptor = scope.getClassifier(name) + val descriptor = scope.getClassifier(name, location) if (descriptor != null && isClassVisible(descriptor as ClassDescriptor/*no type parameter can be imported*/)) descriptor else null } } @@ -248,14 +248,14 @@ class LazyImportScope( override fun getProperties(name: Name, location: UsageLocation): Collection { if (filteringKind == FilteringKind.INVISIBLE_CLASSES) return listOf() - return importResolver.collectFromImports(name, LookupMode.EVERYTHING) { scope, name -> scope.getProperties(name) } + return importResolver.collectFromImports(name, LookupMode.EVERYTHING) { scope, name -> scope.getProperties(name, location) } } override fun getLocalVariable(name: Name) = null override fun getFunctions(name: Name, location: UsageLocation): Collection { if (filteringKind == FilteringKind.INVISIBLE_CLASSES) return listOf() - return importResolver.collectFromImports(name, LookupMode.EVERYTHING) { scope, name -> scope.getFunctions(name) } + return importResolver.collectFromImports(name, LookupMode.EVERYTHING) { scope, name -> scope.getFunctions(name, location) } } override fun getSyntheticExtensionProperties(receiverTypes: Collection, name: Name): Collection { diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/descriptors/LazyClassMemberScope.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/descriptors/LazyClassMemberScope.kt index 2ad16affb4e..fb33e8582fc 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/descriptors/LazyClassMemberScope.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/descriptors/LazyClassMemberScope.kt @@ -117,7 +117,7 @@ public open class LazyClassMemberScope( override fun getFunctions(name: Name, location: UsageLocation): Collection { // TODO: this should be handled by lazy function descriptors - val functions = super.getFunctions(name) + val functions = super.getFunctions(name, location) resolveUnknownVisibilitiesForMembers(functions) return functions } @@ -175,7 +175,7 @@ public open class LazyClassMemberScope( override fun getProperties(name: Name, location: UsageLocation): Collection { // TODO: this should be handled by lazy property descriptors - val properties = super.getProperties(name) + val properties = super.getProperties(name, location) resolveUnknownVisibilitiesForMembers(properties as Collection) return properties } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/scopes/WritableScopeImpl.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/scopes/WritableScopeImpl.kt index cf7d157ecc0..a7711611a16 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/scopes/WritableScopeImpl.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/scopes/WritableScopeImpl.kt @@ -159,7 +159,7 @@ public class WritableScopeImpl @jvmOverloads constructor( override fun getFunctions(name: Name, location: UsageLocation): Collection { checkMayRead() - return concatInOrder(functionsByName(name), workerScope.getFunctions(name)) + return concatInOrder(functionsByName(name), workerScope.getFunctions(name, location)) } override fun addClassifierDescriptor(classifierDescriptor: ClassifierDescriptor) { @@ -170,7 +170,7 @@ public class WritableScopeImpl @jvmOverloads constructor( checkMayRead() return variableOrClassDescriptorByName(name) as? ClassifierDescriptor - ?: workerScope.getClassifier(name) + ?: workerScope.getClassifier(name, location) } override fun getImplicitReceiversHierarchy() = implicitReceiverHierarchy @@ -273,14 +273,14 @@ public class WritableScopeImpl @jvmOverloads constructor( override fun getFunctions(name: Name, location: UsageLocation): Collection { checkMayRead() - return concatInOrder(functionsByName(name, descriptorLimit), workerScope.getFunctions(name)) + return concatInOrder(functionsByName(name, descriptorLimit), workerScope.getFunctions(name, location)) } override fun getClassifier(name: Name, location: UsageLocation): ClassifierDescriptor? { checkMayRead() return variableOrClassDescriptorByName(name, descriptorLimit) as? ClassifierDescriptor - ?: workerScope.getClassifier(name) + ?: workerScope.getClassifier(name, location) } override fun getOwnDeclaredDescriptors(): Collection = addedDescriptors.truncated(descriptorLimit) diff --git a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyPackageFragmentScopeForJavaPackage.kt b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyPackageFragmentScopeForJavaPackage.kt index ba5990b5d1a..90c06b33409 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyPackageFragmentScopeForJavaPackage.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyPackageFragmentScopeForJavaPackage.kt @@ -72,8 +72,8 @@ public class LazyPackageFragmentScopeForJavaPackage( override fun getClassifier(name: Name, location: UsageLocation): ClassifierDescriptor? = classes(name) - override fun getProperties(name: Name, location: UsageLocation) = deserializedPackageScope().getProperties(name) - override fun getFunctions(name: Name, location: UsageLocation) = deserializedPackageScope().getFunctions(name) + super.getFunctions(name) + override fun getProperties(name: Name, location: UsageLocation) = deserializedPackageScope().getProperties(name, location) + override fun getFunctions(name: Name, location: UsageLocation) = deserializedPackageScope().getFunctions(name, location) + super.getFunctions(name, location) override fun addExtraDescriptors(result: MutableSet, kindFilter: DescriptorKindFilter, diff --git a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/AbstractScopeAdapter.kt b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/AbstractScopeAdapter.kt index ef8171e1839..1e0391884ca 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/AbstractScopeAdapter.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/AbstractScopeAdapter.kt @@ -32,7 +32,7 @@ public abstract class AbstractScopeAdapter : JetScope { } override fun getFunctions(name: Name, location: UsageLocation): Collection { - return workerScope.getFunctions(name) + return workerScope.getFunctions(name, location) } override fun getPackage(name: Name): PackageViewDescriptor? { @@ -40,11 +40,11 @@ public abstract class AbstractScopeAdapter : JetScope { } override fun getClassifier(name: Name, location: UsageLocation): ClassifierDescriptor? { - return workerScope.getClassifier(name) + return workerScope.getClassifier(name, location) } override fun getProperties(name: Name, location: UsageLocation): Collection { - return workerScope.getProperties(name) + return workerScope.getProperties(name, location) } override fun getSyntheticExtensionProperties(receiverTypes: Collection, name: Name): Collection { diff --git a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/ChainedScope.kt b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/ChainedScope.kt index 3f241c00ec1..32e4378bd3b 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/ChainedScope.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/ChainedScope.kt @@ -51,19 +51,19 @@ public open class ChainedScope( } override fun getClassifier(name: Name, location: UsageLocation): ClassifierDescriptor? - = getFirstMatch { it.getClassifier(name) } + = getFirstMatch { it.getClassifier(name, location) } override fun getPackage(name: Name): PackageViewDescriptor? = getFirstMatch { it.getPackage(name) } override fun getProperties(name: Name, location: UsageLocation): Collection - = getFromAllScopes { it.getProperties(name) } + = getFromAllScopes { it.getProperties(name, location) } override fun getLocalVariable(name: Name): VariableDescriptor? = getFirstMatch { it.getLocalVariable(name) } override fun getFunctions(name: Name, location: UsageLocation): Collection - = getFromAllScopes { it.getFunctions(name) } + = getFromAllScopes { it.getFunctions(name, location) } override fun getSyntheticExtensionProperties(receiverTypes: Collection, name: Name): Collection = getFromAllScopes { it.getSyntheticExtensionProperties(receiverTypes, name) } diff --git a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/FilteringScope.kt b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/FilteringScope.kt index 94365eae88f..61395035cc4 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/FilteringScope.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/FilteringScope.kt @@ -24,7 +24,7 @@ import org.jetbrains.kotlin.utils.Printer public class FilteringScope(private val workerScope: JetScope, private val predicate: (DeclarationDescriptor) -> Boolean) : JetScope { - override fun getFunctions(name: Name, location: UsageLocation) = workerScope.getFunctions(name).filter(predicate) + override fun getFunctions(name: Name, location: UsageLocation) = workerScope.getFunctions(name, location).filter(predicate) override fun getContainingDeclaration() = workerScope.getContainingDeclaration() @@ -33,9 +33,9 @@ public class FilteringScope(private val workerScope: JetScope, private val predi override fun getPackage(name: Name) = filterDescriptor(workerScope.getPackage(name)) - override fun getClassifier(name: Name, location: UsageLocation) = filterDescriptor(workerScope.getClassifier(name)) + override fun getClassifier(name: Name, location: UsageLocation) = filterDescriptor(workerScope.getClassifier(name, location)) - override fun getProperties(name: Name, location: UsageLocation) = workerScope.getProperties(name).filter(predicate) + override fun getProperties(name: Name, location: UsageLocation) = workerScope.getProperties(name, location).filter(predicate) override fun getSyntheticExtensionProperties(receiverTypes: Collection, name: Name): Collection = workerScope.getSyntheticExtensionProperties(receiverTypes, name).filter(predicate) diff --git a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/InnerClassesScopeWrapper.kt b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/InnerClassesScopeWrapper.kt index 6b04971c577..0c62c2c56b1 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/InnerClassesScopeWrapper.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/InnerClassesScopeWrapper.kt @@ -21,7 +21,7 @@ import org.jetbrains.kotlin.descriptors.ReceiverParameterDescriptor import org.jetbrains.kotlin.name.Name public class InnerClassesScopeWrapper(override val workerScope: JetScope) : AbstractScopeAdapter() { - override fun getClassifier(name: Name, location: UsageLocation) = workerScope.getClassifier(name) as? ClassDescriptor + override fun getClassifier(name: Name, location: UsageLocation) = workerScope.getClassifier(name, location) as? ClassDescriptor override fun getDeclarationsByLabel(labelName: Name) = workerScope.getDeclarationsByLabel(labelName).filterIsInstance() diff --git a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/SubstitutingScope.kt b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/SubstitutingScope.kt index 1afed73ab9e..b5b772fb7e7 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/SubstitutingScope.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/SubstitutingScope.kt @@ -61,13 +61,13 @@ public class SubstitutingScope(private val workerScope: JetScope, private val su return result } - override fun getProperties(name: Name, location: UsageLocation) = substitute(workerScope.getProperties(name)) + override fun getProperties(name: Name, location: UsageLocation) = substitute(workerScope.getProperties(name, location)) override fun getLocalVariable(name: Name) = substitute(workerScope.getLocalVariable(name)) - override fun getClassifier(name: Name, location: UsageLocation) = substitute(workerScope.getClassifier(name)) + override fun getClassifier(name: Name, location: UsageLocation) = substitute(workerScope.getClassifier(name, location)) - override fun getFunctions(name: Name, location: UsageLocation) = substitute(workerScope.getFunctions(name)) + override fun getFunctions(name: Name, location: UsageLocation) = substitute(workerScope.getFunctions(name, location)) override fun getSyntheticExtensionProperties(receiverTypes: Collection, name: Name): Collection = substitute(workerScope.getSyntheticExtensionProperties(receiverTypes, name))