Revert "move filtering logic to NamePredicateUtils"

This reverts commit e7d957436b.
This commit is contained in:
Stepan Koltsov
2012-06-18 20:41:58 +04:00
parent 7b4fda4345
commit 3533107cfe
2 changed files with 30 additions and 36 deletions
@@ -39,7 +39,6 @@ import org.jetbrains.jet.lang.resolve.java.kt.PsiAnnotationWithFlags;
import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.lang.resolve.name.Name;
import org.jetbrains.jet.lang.resolve.name.NamePredicate;
import org.jetbrains.jet.lang.resolve.name.NamePredicateUtils;
import org.jetbrains.jet.lang.types.*;
import org.jetbrains.jet.lang.types.lang.JetStandardClasses;
import org.jetbrains.jet.lang.types.lang.JetStandardLibrary;
@@ -899,7 +898,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes
Set<VariableDescriptor> descriptors = Sets.newHashSet();
for (Map.Entry<Name, NamedMembers> entry : getNamedMemberss(scopeData, predicate).entrySet()) {
for (Map.Entry<Name, NamedMembers> entry : getNamedMemberss(scopeData, predicate)) {
NamedMembers namedMembers = entry.getValue();
Name propertyName = entry.getKey();
@@ -1464,9 +1463,35 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes
}
private Map<Name, NamedMembers> getNamedMemberss(@NotNull ResolverScopeData scopeData, @NotNull NamePredicate predicate) {
private Collection<Map.Entry<Name, NamedMembers>> getNamedMemberss(@NotNull ResolverScopeData scopeData, @NotNull NamePredicate predicate) {
getResolverScopeData(scopeData);
return NamePredicateUtils.filterKeys(scopeData.namedMembersMap, predicate);
Name exact = predicate.getExact();
if (predicate.isAll()) {
return scopeData.namedMembersMap.entrySet();
}
else if (exact != null) {
NamedMembers namedMembers = scopeData.namedMembersMap.get(exact);
if (namedMembers != null) {
return Collections.<Map.Entry<Name, NamedMembers>>singletonList(
new AbstractMap.SimpleEntry<Name, NamedMembers>(exact, namedMembers));
}
else {
return Collections.emptyList();
}
}
else {
Collection<Map.Entry<Name, NamedMembers>> r = Lists.newArrayList();
for (Map.Entry<Name, NamedMembers> e : scopeData.namedMembersMap.entrySet()) {
Name methodName = e.getKey();
NamedMembers namedMembers = e.getValue();
if (predicate.matches(methodName)) {
r.add(new AbstractMap.SimpleEntry<Name, NamedMembers>(methodName, namedMembers));
}
}
return r;
}
}
@@ -1477,7 +1502,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes
List<FunctionDescriptor> functions = new ArrayList<FunctionDescriptor>();
for (Map.Entry<Name, NamedMembers> entry : getNamedMemberss(scopeData, predicate).entrySet()) {
for (Map.Entry<Name, NamedMembers> entry : getNamedMemberss(scopeData, predicate)) {
Name methodName = entry.getKey();
NamedMembers namedMembers = entry.getValue();
resolveNamedGroupFunctions(