Name filters filter by Name instead of String

This commit is contained in:
Valentin Kipyatkov
2014-10-31 16:16:54 +03:00
parent 8b2f6007c2
commit c7527e4a4d
26 changed files with 48 additions and 45 deletions
@@ -23,13 +23,14 @@ import org.jetbrains.jet.lang.resolve.name.FqName
import org.jetbrains.jet.lang.resolve.java.structure.impl.JavaElementCollectionFromPsiArrayUtil.classes
import org.jetbrains.jet.lang.resolve.java.structure.impl.JavaElementCollectionFromPsiArrayUtil.packages
import org.jetbrains.jet.lang.resolve.java.structure.JavaClass
import org.jetbrains.jet.lang.resolve.name.Name
public class JavaPackageImpl(psiPackage: PsiPackage) : JavaElementImpl<PsiPackage>(psiPackage), JavaPackage {
override fun getClasses(nameFilter: (String) -> Boolean): MutableCollection<JavaClass> {
override fun getClasses(nameFilter: (Name) -> Boolean): MutableCollection<JavaClass> {
val psiClasses = getPsi().getClasses().filter {
val name = it.getName()
name != null && nameFilter(name)
name != null && nameFilter(Name.identifier(name))
}
return classes(psiClasses)
}
@@ -174,7 +174,7 @@ public class LazyImportScope(private val resolveSession: ResolveSession,
override fun getDeclarationsByLabel(labelName: Name): Collection<DeclarationDescriptor> = listOf()
override fun getDescriptors(kindFilter: (JetScope.DescriptorKind) -> Boolean,
nameFilter: (String) -> Boolean) = collectFromImports(LookupMode.EVERYTHING, JetScopeSelectorUtil.ALL_DESCRIPTORS_SCOPE_SELECTOR)
nameFilter: (Name) -> Boolean) = collectFromImports(LookupMode.EVERYTHING, JetScopeSelectorUtil.ALL_DESCRIPTORS_SCOPE_SELECTOR)
override fun getImplicitReceiversHierarchy() = listOf<ReceiverParameterDescriptor>()
@@ -121,7 +121,7 @@ public abstract class AbstractLazyMemberScope<D : DeclarationDescriptor, DP : De
override fun getDeclarationsByLabel(labelName: Name) = setOf<DeclarationDescriptor>()
override fun getDescriptors(kindFilter: (JetScope.DescriptorKind) -> Boolean,
nameFilter: (String) -> Boolean): Collection<DeclarationDescriptor> {
nameFilter: (Name) -> Boolean): Collection<DeclarationDescriptor> {
val result = LinkedHashSet(descriptorsFromDeclaredElements())
result.addAll(extraDescriptors())
return result
@@ -95,7 +95,7 @@ public class WritableScopeImpl(scope: JetScope,
}
override fun getDescriptors(kindFilter: (JetScope.DescriptorKind) -> Boolean,
nameFilter: (String) -> Boolean): Collection<DeclarationDescriptor> {
nameFilter: (Name) -> Boolean): Collection<DeclarationDescriptor> {
checkMayRead()
changeLockLevel(WritableScope.LockLevel.READING)
@@ -165,7 +165,7 @@ public class WriteThroughScope(outerScope: JetScope, private val writableWorker:
}
override fun getDescriptors(kindFilter: (JetScope.DescriptorKind) -> Boolean,
nameFilter: (String) -> Boolean): Collection<DeclarationDescriptor> {
nameFilter: (Name) -> Boolean): Collection<DeclarationDescriptor> {
checkMayRead()
if (_allDescriptors == null) {