Revert "use the power of DescriptorPredicate in completion"
This reverts commit 65b74a19b4.
This commit is contained in:
@@ -35,8 +35,6 @@ import org.jetbrains.jet.cli.jvm.compiler.TipsManager;
|
||||
import org.jetbrains.jet.lang.descriptors.*;
|
||||
import org.jetbrains.jet.lang.psi.*;
|
||||
import org.jetbrains.jet.lang.resolve.BindingContext;
|
||||
import org.jetbrains.jet.lang.resolve.name.Name;
|
||||
import org.jetbrains.jet.lang.resolve.name.NamePredicate;
|
||||
import org.jetbrains.jet.lang.resolve.scopes.JetScope;
|
||||
import org.jetbrains.jet.lexer.JetTokens;
|
||||
import org.jetbrains.jet.plugin.caches.JetCacheManager;
|
||||
@@ -349,15 +347,7 @@ public class JetCompletionContributor extends CompletionContributor {
|
||||
(JetFile)reference.getExpression().getContainingFile())
|
||||
.getBindingContext();
|
||||
|
||||
class PrefixMatcherNamePredicate extends NamePredicate {
|
||||
@Override
|
||||
public boolean matches(@NotNull Name name) {
|
||||
return result.getPrefixMatcher().prefixMatches(name.getName());
|
||||
}
|
||||
}
|
||||
|
||||
Collection<DeclarationDescriptor> descriptors = TipsManager.getReferenceVariants(
|
||||
reference.getExpression(), bindingContext, new PrefixMatcherNamePredicate());
|
||||
Collection<DeclarationDescriptor> descriptors = TipsManager.getReferenceVariants(reference.getExpression(), bindingContext);
|
||||
|
||||
Collection<DeclarationDescriptor> checkedDescriptors = Collections2.filter(descriptors, new Predicate<DeclarationDescriptor>() {
|
||||
@Override
|
||||
@@ -366,7 +356,7 @@ public class JetCompletionContributor extends CompletionContributor {
|
||||
return false;
|
||||
}
|
||||
|
||||
return isVisibleDescriptor(descriptor, session);
|
||||
return result.getPrefixMatcher().prefixMatches(descriptor.getName().getName()) && isVisibleDescriptor(descriptor, session);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -36,7 +36,6 @@ import org.jetbrains.jet.lang.descriptors.VariableDescriptor;
|
||||
import org.jetbrains.jet.lang.psi.*;
|
||||
import org.jetbrains.jet.lang.resolve.BindingContext;
|
||||
import org.jetbrains.jet.lang.resolve.BindingContextUtils;
|
||||
import org.jetbrains.jet.lang.resolve.name.NamePredicate;
|
||||
import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate;
|
||||
import org.jetbrains.jet.lang.resolve.scopes.JetScope;
|
||||
import org.jetbrains.jet.lang.types.expressions.ExpressionTypingServices;
|
||||
@@ -85,7 +84,7 @@ public abstract class BaseJetVariableMacro extends Macro {
|
||||
}
|
||||
|
||||
List<JetNamedDeclaration> declarations = new ArrayList<JetNamedDeclaration>();
|
||||
for (DeclarationDescriptor declarationDescriptor : TipsManager.excludeNotCallableExtensions(filteredDescriptors, scope, NamePredicate.all())) {
|
||||
for (DeclarationDescriptor declarationDescriptor : TipsManager.excludeNotCallableExtensions(filteredDescriptors, scope)) {
|
||||
PsiElement declaration = BindingContextUtils.descriptorToDeclaration(bc, declarationDescriptor);
|
||||
assert declaration == null || declaration instanceof PsiNamedElement;
|
||||
|
||||
|
||||
+1
-2
@@ -33,7 +33,6 @@ import org.jetbrains.jet.lang.resolve.BindingContext;
|
||||
import org.jetbrains.jet.lang.resolve.BindingContextUtils;
|
||||
import org.jetbrains.jet.lang.resolve.JetVisibilityChecker;
|
||||
import org.jetbrains.jet.lang.resolve.name.Name;
|
||||
import org.jetbrains.jet.lang.resolve.name.NamePredicate;
|
||||
import org.jetbrains.jet.lang.resolve.scopes.JetScope;
|
||||
import org.jetbrains.jet.lang.types.JetType;
|
||||
import org.jetbrains.jet.lang.types.checker.JetTypeChecker;
|
||||
@@ -356,7 +355,7 @@ public class JetFunctionParameterInfoHandler implements
|
||||
if (scope != null) {
|
||||
placeDescriptor = scope.getContainingDeclaration();
|
||||
}
|
||||
Collection<DeclarationDescriptor> variants = TipsManager.getReferenceVariants(refExpression, bindingContext, NamePredicate.all());
|
||||
Collection<DeclarationDescriptor> variants = TipsManager.getReferenceVariants(refExpression, bindingContext);
|
||||
Name refName = refExpression.getReferencedNameAsName();
|
||||
PsiReference[] references = refExpression.getReferences();
|
||||
if (references.length == 0) return null;
|
||||
|
||||
@@ -27,7 +27,6 @@ import org.jetbrains.jet.lang.psi.JetExpression;
|
||||
import org.jetbrains.jet.lang.psi.JetFile;
|
||||
import org.jetbrains.jet.lang.psi.JetVisitorVoid;
|
||||
import org.jetbrains.jet.lang.resolve.BindingContext;
|
||||
import org.jetbrains.jet.lang.resolve.name.NamePredicate;
|
||||
import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade;
|
||||
|
||||
import java.util.Collection;
|
||||
@@ -107,7 +106,7 @@ public class JetNameValidatorImpl implements JetNameValidator {
|
||||
@Override
|
||||
public void visitExpression(JetExpression expression) {
|
||||
Collection<DeclarationDescriptor> variants =
|
||||
TipsManager.getVariantsNoReceiver(expression, myBindingContext, NamePredicate.all());
|
||||
TipsManager.getVariantsNoReceiver(expression, myBindingContext);
|
||||
for (DeclarationDescriptor variant : variants) {
|
||||
if (variant.getName().getName().equals(name) && variant instanceof VariableDescriptor) {
|
||||
result.set(false);
|
||||
|
||||
@@ -25,7 +25,6 @@ import org.jetbrains.jet.lang.psi.JetFile;
|
||||
import org.jetbrains.jet.lang.psi.JetPsiFactory;
|
||||
import org.jetbrains.jet.lang.psi.JetSimpleNameExpression;
|
||||
import org.jetbrains.jet.lang.resolve.BindingContext;
|
||||
import org.jetbrains.jet.lang.resolve.name.NamePredicate;
|
||||
import org.jetbrains.jet.plugin.completion.DescriptorLookupConverter;
|
||||
import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade;
|
||||
|
||||
@@ -67,7 +66,7 @@ public class JetSimpleNameReference extends JetPsiReference {
|
||||
.getBindingContext();
|
||||
|
||||
return DescriptorLookupConverter.collectLookupElements(
|
||||
bindingContext, TipsManager.getReferenceVariants(myExpression, bindingContext, NamePredicate.all()));
|
||||
bindingContext, TipsManager.getReferenceVariants(myExpression, bindingContext));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user