From 11f2a98032ef81a6737e604e8897a03715266734 Mon Sep 17 00:00:00 2001 From: Stepan Koltsov Date: Mon, 18 Jun 2012 20:53:55 +0400 Subject: [PATCH] revert "DescriptorMatcher" --- .../jet/cli/jvm/compiler/TipsManager.java | 19 +- .../codegen/ImplementationBodyCodegen.java | 33 +-- .../resolve/java/JavaClassOrPackageScope.java | 6 +- .../lang/resolve/AbstractScopeAdapter.java | 5 +- .../jet/lang/resolve/DelegationResolver.java | 3 +- .../jet/lang/resolve/OverrideResolver.java | 5 +- .../resolve/lazy/AbstractLazyMemberScope.java | 10 +- .../resolve/lazy/LazyClassMemberScope.java | 5 +- .../jet/lang/resolve/scopes/ChainedScope.java | 4 +- .../resolve/scopes/DescriptorPredicate.java | 216 ------------------ .../scopes/DescriptorPredicateUtils.java | 41 ---- .../scopes/InnerClassesScopeWrapper.java | 5 +- .../jet/lang/resolve/scopes/JetScope.java | 2 +- .../jet/lang/resolve/scopes/JetScopeImpl.java | 2 +- .../lang/resolve/scopes/JetScopeUtils.java | 14 +- .../resolve/scopes/SubstitutingScope.java | 4 +- .../resolve/scopes/WritableScopeImpl.java | 8 +- .../resolve/scopes/WriteThroughScope.java | 10 +- .../jetbrains/jet/lang/types/ErrorUtils.java | 3 +- .../lang/types/lang/JetStandardClasses.java | 2 +- .../jet/jvm/compiler/NamespaceComparator.java | 7 +- ...solveDescriptorsFromExternalLibraries.java | 3 +- ...ractLazyResolveNamespaceComparingTest.java | 3 +- .../libraries/DecompiledDataFactory.java | 6 +- .../macro/BaseJetVariableMacro.java | 4 +- .../macro/JetAnonymousSuperMacro.java | 4 +- .../StandardLibraryReferenceResolver.java | 3 +- .../StandardLibraryReferenceResolverTest.java | 5 +- .../k2js/translate/intrinsic/Intrinsics.java | 5 +- .../translate/utils/JsDescriptorUtils.java | 3 +- 30 files changed, 82 insertions(+), 358 deletions(-) delete mode 100644 compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/DescriptorPredicate.java delete mode 100644 compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/DescriptorPredicateUtils.java diff --git a/compiler/backend/src/org/jetbrains/jet/cli/jvm/compiler/TipsManager.java b/compiler/backend/src/org/jetbrains/jet/cli/jvm/compiler/TipsManager.java index ba8bf37734c..9c625a867d1 100644 --- a/compiler/backend/src/org/jetbrains/jet/cli/jvm/compiler/TipsManager.java +++ b/compiler/backend/src/org/jetbrains/jet/cli/jvm/compiler/TipsManager.java @@ -32,7 +32,6 @@ import org.jetbrains.jet.lang.psi.JetSimpleNameExpression; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.calls.autocasts.AutoCastServiceImpl; import org.jetbrains.jet.lang.resolve.calls.autocasts.DataFlowInfo; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.resolve.scopes.JetScopeUtils; import org.jetbrains.jet.lang.resolve.scopes.receivers.ExpressionReceiver; @@ -74,8 +73,7 @@ public final class TipsManager { for (ReceiverDescriptor descriptor : variantsForExplicitReceiver) { descriptors.addAll(includeExternalCallableExtensions( - // TODO: better predicate - excludePrivateDescriptors(descriptor.getType().getMemberScope().getAllDescriptors(DescriptorPredicate.all())), + excludePrivateDescriptors(descriptor.getType().getMemberScope().getAllDescriptors()), resolutionScope, descriptor)); } @@ -83,8 +81,7 @@ public final class TipsManager { } return includeExternalCallableExtensions( - // TODO: better predicate - excludePrivateDescriptors(expressionType.getMemberScope().getAllDescriptors(DescriptorPredicate.all())), + excludePrivateDescriptors(expressionType.getMemberScope().getAllDescriptors()), resolutionScope, new ExpressionReceiver(receiverExpression, expressionType)); } return Collections.emptyList(); @@ -98,8 +95,7 @@ public final class TipsManager { JetScope resolutionScope = context.get(BindingContext.RESOLUTION_SCOPE, expression); if (resolutionScope != null) { if (expression.getParent() instanceof JetImportDirective || expression.getParent() instanceof JetNamespaceHeader) { - // TODO: better predicate - return excludeNonPackageDescriptors(resolutionScope.getAllDescriptors(DescriptorPredicate.all())); + return excludeNonPackageDescriptors(resolutionScope.getAllDescriptors()); } else { Collection descriptorsSet = Sets.newHashSet(); @@ -109,12 +105,10 @@ public final class TipsManager { for (ReceiverDescriptor receiverDescriptor : result) { JetType receiverType = receiverDescriptor.getType(); - // TODO: better predicate - descriptorsSet.addAll(receiverType.getMemberScope().getAllDescriptors(DescriptorPredicate.all())); + descriptorsSet.addAll(receiverType.getMemberScope().getAllDescriptors()); } - // TODO: better predicate - descriptorsSet.addAll(resolutionScope.getAllDescriptors(DescriptorPredicate.all())); + descriptorsSet.addAll(resolutionScope.getAllDescriptors()); return excludeNotCallableExtensions(excludePrivateDescriptors(descriptorsSet), resolutionScope); } } @@ -125,8 +119,7 @@ public final class TipsManager { public static Collection getReferenceVariants(JetNamespaceHeader expression, BindingContext context) { JetScope resolutionScope = context.get(BindingContext.RESOLUTION_SCOPE, expression); if (resolutionScope != null) { - // TODO: better predicate - return excludeNonPackageDescriptors(resolutionScope.getAllDescriptors(DescriptorPredicate.all())); + return excludeNonPackageDescriptors(resolutionScope.getAllDescriptors()); } return Collections.emptyList(); diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java index 729d1174f61..c94a4d9d51c 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java @@ -35,7 +35,6 @@ import org.jetbrains.jet.lang.resolve.java.JdkNames; import org.jetbrains.jet.lang.resolve.java.JvmAbi; import org.jetbrains.jet.lang.resolve.java.JvmClassName; import org.jetbrains.jet.lang.resolve.java.JvmStdlibNames; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.lexer.JetTokens; import org.jetbrains.jet.utils.BitSetUtils; @@ -137,7 +136,7 @@ public class ImplementationBodyCodegen extends ClassBodyCodegen { v.visitOuterClass(typeMapper.mapType(container.getDefaultType(), MapTypeMode.IMPL).getInternalName(), null, null); } - for (DeclarationDescriptor declarationDescriptor : descriptor.getUnsubstitutedInnerClassesScope().getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor declarationDescriptor : descriptor.getUnsubstitutedInnerClassesScope().getAllDescriptors()) { assert declarationDescriptor instanceof ClassDescriptor; ClassDescriptor innerClass = (ClassDescriptor) declarationDescriptor; // TODO: proper access @@ -1056,17 +1055,19 @@ public class ImplementationBodyCodegen extends ClassBodyCodegen { final PropertyCodegen propertyCodegen = new PropertyCodegen(delegateContext, v, functionCodegen, state); ClassDescriptor classDescriptor = bindingContext.get(BindingContext.CLASS, toClass); - for (DeclarationDescriptor declaration : descriptor.getDefaultType().getMemberScope().getAllDescriptors(DescriptorPredicate.callableMembers())) { - CallableMemberDescriptor callableMemberDescriptor = (CallableMemberDescriptor) declaration; - if (callableMemberDescriptor.getKind() == CallableMemberDescriptor.Kind.DELEGATION) { - Set overriddenDescriptors = callableMemberDescriptor.getOverriddenDescriptors(); - for (CallableMemberDescriptor overriddenDescriptor : overriddenDescriptors) { - if (overriddenDescriptor.getContainingDeclaration() == classDescriptor) { - if (declaration instanceof PropertyDescriptor) { - propertyCodegen.genDelegate((PropertyDescriptor) declaration, (PropertyDescriptor) overriddenDescriptor, field); - } - else if (declaration instanceof SimpleFunctionDescriptor) { - functionCodegen.genDelegate((SimpleFunctionDescriptor) declaration, overriddenDescriptor, field); + for (DeclarationDescriptor declaration : descriptor.getDefaultType().getMemberScope().getAllDescriptors()) { + if (declaration instanceof CallableMemberDescriptor) { + CallableMemberDescriptor callableMemberDescriptor = (CallableMemberDescriptor) declaration; + if (callableMemberDescriptor.getKind() == CallableMemberDescriptor.Kind.DELEGATION) { + Set overriddenDescriptors = callableMemberDescriptor.getOverriddenDescriptors(); + for (CallableMemberDescriptor overriddenDescriptor : overriddenDescriptors) { + if (overriddenDescriptor.getContainingDeclaration() == classDescriptor) { + if (declaration instanceof PropertyDescriptor) { + propertyCodegen.genDelegate((PropertyDescriptor) declaration, (PropertyDescriptor) overriddenDescriptor, field); + } + else if (declaration instanceof SimpleFunctionDescriptor) { + functionCodegen.genDelegate((SimpleFunctionDescriptor) declaration, overriddenDescriptor, field); + } } } } @@ -1100,7 +1101,11 @@ public class ImplementationBodyCodegen extends ClassBodyCodegen { List> r = Lists.newArrayList(); root: - for (DeclarationDescriptor decl : classDescriptor.getDefaultType().getMemberScope().getAllDescriptors(DescriptorPredicate.callableMembers())) { + for (DeclarationDescriptor decl : classDescriptor.getDefaultType().getMemberScope().getAllDescriptors()) { + if (!(decl instanceof CallableMemberDescriptor)) { + continue; + } + CallableMemberDescriptor callableMemberDescriptor = (CallableMemberDescriptor) decl; if (callableMemberDescriptor.getKind() != CallableMemberDescriptor.Kind.FAKE_OVERRIDE) { continue; diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaClassOrPackageScope.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaClassOrPackageScope.java index c3091460f2e..9d5d8a013e5 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaClassOrPackageScope.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaClassOrPackageScope.java @@ -24,8 +24,6 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.resolve.name.FqName; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicateUtils; import org.jetbrains.jet.lang.resolve.scopes.JetScopeImpl; import java.util.Collection; @@ -71,7 +69,7 @@ public abstract class JavaClassOrPackageScope extends JetScopeImpl { @NotNull @Override - public Collection getAllDescriptors(@NotNull DescriptorPredicate predicate) { + public Collection getAllDescriptors() { if (allDescriptors == null) { allDescriptors = Sets.newHashSet(); @@ -129,6 +127,6 @@ public abstract class JavaClassOrPackageScope extends JetScopeImpl { } } - return DescriptorPredicateUtils.filter(allDescriptors, predicate); + return allDescriptors; } } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/AbstractScopeAdapter.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/AbstractScopeAdapter.java index 7719335c113..97fc0e2cdca 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/AbstractScopeAdapter.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/AbstractScopeAdapter.java @@ -20,7 +20,6 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.resolve.name.LabelName; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverDescriptor; @@ -105,7 +104,7 @@ public abstract class AbstractScopeAdapter implements JetScope { @NotNull @Override - public Collection getAllDescriptors(@NotNull DescriptorPredicate predicate) { - return getWorkerScope().getAllDescriptors(predicate); + public Collection getAllDescriptors() { + return getWorkerScope().getAllDescriptors(); } } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DelegationResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DelegationResolver.java index 008f185062e..e2efb3d4715 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DelegationResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DelegationResolver.java @@ -19,7 +19,6 @@ package org.jetbrains.jet.lang.resolve; import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.psi.*; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.types.JetType; import javax.inject.Inject; @@ -68,7 +67,7 @@ public class DelegationResolver { JetDelegatorByExpressionSpecifier specifier = (JetDelegatorByExpressionSpecifier) delegationSpecifier; JetType type = trace.get(BindingContext.TYPE, specifier.getTypeReference()); if (type != null) { - for (DeclarationDescriptor declarationDescriptor : type.getMemberScope().getAllDescriptors(DescriptorPredicate.callableMembers())) { + for (DeclarationDescriptor declarationDescriptor : type.getMemberScope().getAllDescriptors()) { if (declarationDescriptor instanceof PropertyDescriptor) { PropertyDescriptor propertyDescriptor = (PropertyDescriptor) declarationDescriptor; if (propertyDescriptor.getModality().isOverridable()) { diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/OverrideResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/OverrideResolver.java index f17ffe4982b..66828888f85 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/OverrideResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/OverrideResolver.java @@ -29,7 +29,6 @@ import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.diagnostics.Errors; import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.lang.types.checker.JetTypeChecker; @@ -239,7 +238,7 @@ public class OverrideResolver { private static List getCallableMembersFromType(JetScope scope) { List r = Lists.newArrayList(); - for (DeclarationDescriptor decl : scope.getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor decl : scope.getAllDescriptors()) { if (decl instanceof PropertyDescriptor || decl instanceof SimpleFunctionDescriptor) { r.add((CallableMemberDescriptor) decl); } @@ -333,7 +332,7 @@ public class OverrideResolver { public static Multimap collectSuperMethods(MutableClassDescriptor classDescriptor) { Set inheritedFunctions = Sets.newLinkedHashSet(); for (JetType supertype : classDescriptor.getSupertypes()) { - for (DeclarationDescriptor descriptor : supertype.getMemberScope().getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor descriptor : supertype.getMemberScope().getAllDescriptors()) { if (descriptor instanceof CallableMemberDescriptor) { CallableMemberDescriptor memberDescriptor = (CallableMemberDescriptor) descriptor; inheritedFunctions.add(memberDescriptor); diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/AbstractLazyMemberScope.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/AbstractLazyMemberScope.java index d1a4be70d71..6cda23778e9 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/AbstractLazyMemberScope.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/AbstractLazyMemberScope.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.resolve.lazy; -import com.google.common.collect.Collections2; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; @@ -26,8 +25,6 @@ import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lang.resolve.name.LabelName; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicateUtils; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverDescriptor; @@ -195,9 +192,7 @@ public abstract class AbstractLazyMemberScope getAllDescriptors(@NotNull DescriptorPredicate predicate) { - // TODO: cache only what matches predicate - + public Collection getAllDescriptors() { for (JetDeclaration declaration : declarationProvider.getAllDeclarations()) { if (declaration instanceof JetClassOrObject) { JetClassOrObject classOrObject = (JetClassOrObject) declaration; @@ -227,8 +222,7 @@ public abstract class AbstractLazyMemberScope getAllDescriptors(@NotNull DescriptorPredicate predicate) { + public Collection getAllDescriptors() { if (allDescriptors == null) { allDescriptors = Sets.newHashSet(); for (JetScope scope : scopeChain) { - allDescriptors.addAll(scope.getAllDescriptors(DescriptorPredicate.all())); + allDescriptors.addAll(scope.getAllDescriptors()); } } return allDescriptors; diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/DescriptorPredicate.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/DescriptorPredicate.java deleted file mode 100644 index 295d7ece967..00000000000 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/DescriptorPredicate.java +++ /dev/null @@ -1,216 +0,0 @@ -/* - * Copyright 2010-2012 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.jet.lang.resolve.scopes; - -import com.google.common.base.Predicate; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.jet.lang.descriptors.CallableDescriptor; -import org.jetbrains.jet.lang.descriptors.CallableMemberDescriptor; -import org.jetbrains.jet.lang.descriptors.ClassDescriptor; -import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor; -import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor; -import org.jetbrains.jet.lang.resolve.name.Name; - -/** - * @author Stepan Koltsov - */ -public abstract class DescriptorPredicate { - - public boolean includeAll() { - return this instanceof All; - } - - public abstract boolean includeName(@NotNull Name name); - - public enum DescriptorKind { - CLASS, - CALLABLE_MEMBER, - CALLABLE_NON_MEMBER, - NAMESPACE, - OTHER, - ; - - public boolean isCallable() { - return this == CALLABLE_MEMBER || this == CALLABLE_NON_MEMBER; - } - } - - public abstract boolean includeKind(@NotNull DescriptorKind kind); - - private static DescriptorKind descriptorKind(@NotNull DeclarationDescriptor descriptor) { - if (descriptor instanceof CallableMemberDescriptor) { - return DescriptorKind.CALLABLE_MEMBER; - } - else if (descriptor instanceof CallableDescriptor) { - return DescriptorKind.CALLABLE_NON_MEMBER; - } - else if (descriptor instanceof ClassDescriptor) { - return DescriptorKind.CLASS; - } - else if (descriptor instanceof NamespaceDescriptor) { - return DescriptorKind.NAMESPACE; - } - else { - return DescriptorKind.OTHER; - } - } - - /** - * Should be called only if includeKind(CALLABLE_MEMBER) returned true. - */ - public abstract boolean includeExtension(boolean extension); - - - public boolean include(@NotNull DeclarationDescriptor descriptor) { - if (!includeKind(descriptorKind(descriptor))) { - return false; - } - - if (descriptor instanceof CallableMemberDescriptor) { - CallableMemberDescriptor callable = (CallableMemberDescriptor) descriptor; - boolean extension = callable.getReceiverParameter().exists(); - if (!includeExtension(extension)) { - return false; - } - } - - if (!includeName(descriptor.getName())) { - return false; - } - - return true; - } - - - private static class All extends DescriptorPredicate { - private static final All instance = new All(); - - @Override - public boolean include(@NotNull DeclarationDescriptor descriptor) { - return true; - } - - @Override - public boolean includeKind(@NotNull DescriptorKind kind) { - return true; - } - - @Override - public boolean includeName(@NotNull Name name) { - return true; - } - - @Override - public boolean includeExtension(boolean extension) { - return true; - } - } - - public static DescriptorPredicate all() { - return All.instance; - } - - - private static class HasName extends DescriptorPredicate { - @NotNull - private final Name required; - - private HasName(@NotNull Name required) { - this.required = required; - } - - @Override - public boolean includeKind(@NotNull DescriptorKind kind) { - return true; - } - - @Override - public boolean includeExtension(boolean extension) { - return true; - } - - @Override - public boolean include(@NotNull DeclarationDescriptor descriptor) { - return includeName(descriptor.getName()); - } - - @Override - public boolean includeName(@NotNull Name name) { - return required.equals(name); - } - - } - - public static DescriptorPredicate hasName(@NotNull Name name) { - return new HasName(name); - } - - - private static class CallableMembers extends DescriptorPredicate { - public static final CallableMembers instance = new CallableMembers(); - - @Override - public boolean includeName(@NotNull Name name) { - return true; - } - - @Override - public boolean includeExtension(boolean extension) { - return true; - } - - @Override - public boolean include(@NotNull DeclarationDescriptor descriptor) { - return descriptor instanceof CallableMemberDescriptor; - } - - @Override - public boolean includeKind(@NotNull DescriptorKind kind) { - return kind == DescriptorKind.CALLABLE_MEMBER; - } - - } - - public static DescriptorPredicate callableMembers() { - return CallableMembers.instance; - } - - - private static class Extension extends CallableMembers { - private static final Extension instance = new Extension(); - - @Override - public boolean includeExtension(boolean extension) { - return extension; - } - } - - public static DescriptorPredicate extension() { - return Extension.instance; - } - - - public Predicate asGuavaPredicate() { - return new Predicate() { - @Override - public boolean apply(@NotNull DeclarationDescriptor descriptor) { - return include(descriptor); - } - }; - } - -} diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/DescriptorPredicateUtils.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/DescriptorPredicateUtils.java deleted file mode 100644 index e3e41f9a25e..00000000000 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/DescriptorPredicateUtils.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright 2010-2012 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.jet.lang.resolve.scopes; - -import com.google.common.collect.Collections2; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor; - -import java.util.Collection; - -/** - * @author Stepan Koltsov - */ -public class DescriptorPredicateUtils { - - public static Collection filter( - @NotNull Collection descriptors, - @NotNull DescriptorPredicate predicate) { - if (predicate.includeAll()) { - return descriptors; - } - else { - return Collections2.filter(descriptors, predicate.asGuavaPredicate()); - } - } - -} diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/InnerClassesScopeWrapper.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/InnerClassesScopeWrapper.java index d17dfde5d00..433f6f0d088 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/InnerClassesScopeWrapper.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/InnerClassesScopeWrapper.java @@ -72,9 +72,8 @@ public class InnerClassesScopeWrapper extends JetScopeImpl { @NotNull @Override - public Collection getAllDescriptors(@NotNull DescriptorPredicate predicate) { - // TODO: use better predicate - Collection allDescriptors = actualScope.getAllDescriptors(predicate); + public Collection getAllDescriptors() { + Collection allDescriptors = actualScope.getAllDescriptors(); return Collections2.filter(allDescriptors, new Predicate() { @Override public boolean apply(@Nullable DeclarationDescriptor descriptor) { diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScope.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScope.java index 60e88d7498f..07eec60d39e 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScope.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScope.java @@ -84,7 +84,7 @@ public interface JetScope { * @return All visible descriptors from current scope. */ @NotNull - Collection getAllDescriptors(@NotNull DescriptorPredicate predicate); + Collection getAllDescriptors(); /** * @return EFFECTIVE implicit receiver at this point (may be corresponding to an outer scope) diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeImpl.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeImpl.java index 3cdae6cc32d..eb37ce906e7 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeImpl.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeImpl.java @@ -88,7 +88,7 @@ public abstract class JetScopeImpl implements JetScope { @NotNull @Override - public Collection getAllDescriptors(@NotNull DescriptorPredicate predicate) { + public Collection getAllDescriptors() { return Collections.emptyList(); } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeUtils.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeUtils.java index 73c249537d3..e62052e741f 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeUtils.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeUtils.java @@ -53,8 +53,18 @@ public final class JetScopeUtils { * @param scope Scope for query extensions. * @return extension descriptors. */ - @SuppressWarnings("unchecked") public static Collection getAllExtensions(@NotNull JetScope scope) { - return (Collection) (Object) scope.getAllDescriptors(DescriptorPredicate.extension()); + final Set result = Sets.newHashSet(); + + for (DeclarationDescriptor descriptor : scope.getAllDescriptors()) { + if (descriptor instanceof CallableDescriptor) { + CallableDescriptor callDescriptor = (CallableDescriptor) descriptor; + if (callDescriptor.getReceiverParameter().exists()) { + result.add(callDescriptor); + } + } + } + + return result; } } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.java index 4e6467dc0fc..e42273defa3 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.java @@ -149,10 +149,10 @@ public class SubstitutingScope implements JetScope { @NotNull @Override - public Collection getAllDescriptors(@NotNull DescriptorPredicate predicate) { + public Collection getAllDescriptors() { if (allDescriptors == null) { allDescriptors = Sets.newHashSet(); - for (DeclarationDescriptor descriptor : workerScope.getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor descriptor : workerScope.getAllDescriptors()) { DeclarationDescriptor substitute = substitute(descriptor); // assert substitute != null : descriptor; if (substitute != null) { diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.java index d2f2b18ed81..4bc59570f26 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.java @@ -126,7 +126,7 @@ public class WritableScopeImpl extends WritableScopeWithImports { @NotNull @Override - public Collection getAllDescriptors(@NotNull DescriptorPredicate predicate) { + public Collection getAllDescriptors() { checkMayRead(); if (!allDescriptorsDone) { @@ -135,12 +135,12 @@ public class WritableScopeImpl extends WritableScopeWithImports { // make sure no descriptors added to allDescriptors collection changeLockLevel(LockLevel.READING); - allDescriptors.addAll(getWorkerScope().getAllDescriptors(DescriptorPredicate.all())); + allDescriptors.addAll(getWorkerScope().getAllDescriptors()); for (JetScope imported : getImports()) { - allDescriptors.addAll(imported.getAllDescriptors(DescriptorPredicate.all())); + allDescriptors.addAll(imported.getAllDescriptors()); } } - return DescriptorPredicateUtils.filter(allDescriptors, predicate); + return allDescriptors; } @NotNull diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WriteThroughScope.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WriteThroughScope.java index 69d40b187f8..1528dd3f0c8 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WriteThroughScope.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WriteThroughScope.java @@ -283,19 +283,19 @@ public class WriteThroughScope extends WritableScopeWithImports { @NotNull @Override - public Collection getAllDescriptors(@NotNull DescriptorPredicate predicate) { + public Collection getAllDescriptors() { checkMayRead(); if (allDescriptors == null) { allDescriptors = Lists.newArrayList(); - allDescriptors.addAll(writableWorker.getAllDescriptors(DescriptorPredicate.all())); - allDescriptors.addAll(getWorkerScope().getAllDescriptors(DescriptorPredicate.all())); + allDescriptors.addAll(writableWorker.getAllDescriptors()); + allDescriptors.addAll(getWorkerScope().getAllDescriptors()); for (JetScope imported : getImports()) { - allDescriptors.addAll(imported.getAllDescriptors(DescriptorPredicate.all())); + allDescriptors.addAll(imported.getAllDescriptors()); } } - return DescriptorPredicateUtils.filter(allDescriptors, predicate); + return allDescriptors; } @NotNull diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/types/ErrorUtils.java b/compiler/frontend/src/org/jetbrains/jet/lang/types/ErrorUtils.java index e143718cb33..27703d7c531 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/types/ErrorUtils.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/types/ErrorUtils.java @@ -22,7 +22,6 @@ import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.descriptors.annotations.AnnotationDescriptor; import org.jetbrains.jet.lang.resolve.name.LabelName; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverDescriptor; import org.jetbrains.jet.lang.types.error.ErrorSimpleFunctionDescriptorImpl; @@ -113,7 +112,7 @@ public class ErrorUtils { @NotNull @Override - public Collection getAllDescriptors(@NotNull DescriptorPredicate predicate) { + public Collection getAllDescriptors() { return Collections.emptyList(); } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/types/lang/JetStandardClasses.java b/compiler/frontend/src/org/jetbrains/jet/lang/types/lang/JetStandardClasses.java index 2e665a96106..77465b26b64 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/types/lang/JetStandardClasses.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/types/lang/JetStandardClasses.java @@ -499,6 +499,6 @@ public class JetStandardClasses { @NotNull public static Collection getAllStandardClasses() { - return STANDARD_CLASSES.getAllDescriptors(DescriptorPredicate.all()); + return STANDARD_CLASSES.getAllDescriptors(); } } diff --git a/compiler/tests/org/jetbrains/jet/jvm/compiler/NamespaceComparator.java b/compiler/tests/org/jetbrains/jet/jvm/compiler/NamespaceComparator.java index 84631962a09..2f6fdb9e015 100644 --- a/compiler/tests/org/jetbrains/jet/jvm/compiler/NamespaceComparator.java +++ b/compiler/tests/org/jetbrains/jet/jvm/compiler/NamespaceComparator.java @@ -25,7 +25,6 @@ import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.descriptors.annotations.AnnotationDescriptor; import org.jetbrains.jet.lang.resolve.DescriptorUtils; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.resolve.scopes.receivers.ExtensionReceiver; import org.jetbrains.jet.lang.types.ErrorUtils; @@ -99,13 +98,13 @@ public class NamespaceComparator { sb.append("namespace " + nsa.getName() + "\n\n"); - Assert.assertTrue(!nsa.getMemberScope().getAllDescriptors(DescriptorPredicate.all()).isEmpty()); + Assert.assertTrue(!nsa.getMemberScope().getAllDescriptors().isEmpty()); Set classifierNames = new HashSet(); Set propertyNames = new HashSet(); Set functionNames = new HashSet(); - for (DeclarationDescriptor ad : nsa.getMemberScope().getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor ad : nsa.getMemberScope().getAllDescriptors()) { if (ad instanceof ClassifierDescriptor) { classifierNames.add(ad.getName()); } @@ -600,7 +599,7 @@ public class NamespaceComparator { } JetScope memberScope = klass.getMemberScope(typeArguments); - for (DeclarationDescriptor member : memberScope.getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor member : memberScope.getAllDescriptors()) { if (!includeObject) { if (member.getName().getName().matches("equals|hashCode|finalize|wait|notify(All)?|toString|clone|getClass")) { continue; diff --git a/compiler/tests/org/jetbrains/jet/jvm/compiler/longTest/ResolveDescriptorsFromExternalLibraries.java b/compiler/tests/org/jetbrains/jet/jvm/compiler/longTest/ResolveDescriptorsFromExternalLibraries.java index 8c53187ada5..6ae5a6cf927 100644 --- a/compiler/tests/org/jetbrains/jet/jvm/compiler/longTest/ResolveDescriptorsFromExternalLibraries.java +++ b/compiler/tests/org/jetbrains/jet/jvm/compiler/longTest/ResolveDescriptorsFromExternalLibraries.java @@ -36,7 +36,6 @@ import org.jetbrains.jet.lang.resolve.name.FqName; import org.jetbrains.jet.lang.resolve.java.CompilerDependencies; import org.jetbrains.jet.lang.resolve.java.CompilerSpecialMode; import org.jetbrains.jet.lang.resolve.java.DescriptorSearchRule; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import java.io.File; import java.io.FileInputStream; @@ -197,7 +196,7 @@ public class ResolveDescriptorsFromExternalLibraries { if (clazz == null) { throw new IllegalStateException("class not found by name " + className + " in " + libDescription); } - clazz.getDefaultType().getMemberScope().getAllDescriptors(DescriptorPredicate.all()); + clazz.getDefaultType().getMemberScope().getAllDescriptors(); } catch (Exception e) { System.err.println("failed to resolve " + className); diff --git a/compiler/tests/org/jetbrains/jet/lang/resolve/lazy/AbstractLazyResolveNamespaceComparingTest.java b/compiler/tests/org/jetbrains/jet/lang/resolve/lazy/AbstractLazyResolveNamespaceComparingTest.java index 8f06d187021..e3d514ca4d3 100644 --- a/compiler/tests/org/jetbrains/jet/lang/resolve/lazy/AbstractLazyResolveNamespaceComparingTest.java +++ b/compiler/tests/org/jetbrains/jet/lang/resolve/lazy/AbstractLazyResolveNamespaceComparingTest.java @@ -29,7 +29,6 @@ import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetPsiFactory; import org.jetbrains.jet.lang.resolve.AnalyzerScriptParameter; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import java.io.File; import java.io.IOException; @@ -102,6 +101,6 @@ public abstract class AbstractLazyResolveNamespaceComparingTest extends Abstract } private NamespaceDescriptor theOnlySubPackage(NamespaceDescriptor namespace) { - return (NamespaceDescriptor) namespace.getMemberScope().getAllDescriptors(DescriptorPredicate.all()).iterator().next(); + return (NamespaceDescriptor) namespace.getMemberScope().getAllDescriptors().iterator().next(); } } diff --git a/idea/src/org/jetbrains/jet/plugin/libraries/DecompiledDataFactory.java b/idea/src/org/jetbrains/jet/plugin/libraries/DecompiledDataFactory.java index 99d93059268..5db6410d3ca 100644 --- a/idea/src/org/jetbrains/jet/plugin/libraries/DecompiledDataFactory.java +++ b/idea/src/org/jetbrains/jet/plugin/libraries/DecompiledDataFactory.java @@ -38,7 +38,6 @@ import org.jetbrains.jet.lang.resolve.java.CompilerSpecialMode; import org.jetbrains.jet.lang.resolve.java.DescriptorSearchRule; import org.jetbrains.jet.lang.resolve.java.JavaDescriptorResolver; import org.jetbrains.jet.lang.resolve.java.JvmAbi; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.resolve.DescriptorRenderer; import java.util.*; @@ -90,8 +89,7 @@ class DecompiledDataFactory { NamespaceDescriptor nd = myJavaDescriptorResolver.resolveNamespace(new FqName(packageName), DescriptorSearchRule.INCLUDE_KOTLIN); if (nd != null) { - // TODO: better predicate - for (DeclarationDescriptor member : sortDeclarations(nd.getMemberScope().getAllDescriptors(DescriptorPredicate.all()))) { + for (DeclarationDescriptor member : sortDeclarations(nd.getMemberScope().getAllDescriptors())) { if (member instanceof ClassDescriptor || member instanceof NamespaceDescriptor) { continue; } @@ -157,7 +155,7 @@ class DecompiledDataFactory { myBuilder.append(subindent).append("class "); appendDescriptor(classDescriptor.getClassObjectDescriptor(), subindent); } - for (DeclarationDescriptor member : sortDeclarations(classDescriptor.getDefaultType().getMemberScope().getAllDescriptors(DescriptorPredicate.all()))) { + for (DeclarationDescriptor member : sortDeclarations(classDescriptor.getDefaultType().getMemberScope().getAllDescriptors())) { if (member.getContainingDeclaration() != descriptor) { continue; } diff --git a/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/BaseJetVariableMacro.java b/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/BaseJetVariableMacro.java index 6250c8390ad..e0dfb2073ac 100644 --- a/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/BaseJetVariableMacro.java +++ b/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/BaseJetVariableMacro.java @@ -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.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.types.expressions.ExpressionTypingServices; import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; @@ -73,8 +72,7 @@ public abstract class BaseJetVariableMacro extends Macro { ExpressionTypingServices callResolverContext = new InjectorForMacros(project).getExpressionTypingServices(); List filteredDescriptors = new ArrayList(); - // TODO: better predicate - for (DeclarationDescriptor declarationDescriptor : scope.getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor declarationDescriptor : scope.getAllDescriptors()) { if (declarationDescriptor instanceof VariableDescriptor) { VariableDescriptor variableDescriptor = (VariableDescriptor) declarationDescriptor; if (isSuitable(variableDescriptor, scope, project, callResolverContext)) { diff --git a/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/JetAnonymousSuperMacro.java b/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/JetAnonymousSuperMacro.java index 776ab79a927..b7d49bad5ad 100644 --- a/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/JetAnonymousSuperMacro.java +++ b/idea/src/org/jetbrains/jet/plugin/liveTemplates/macro/JetAnonymousSuperMacro.java @@ -37,7 +37,6 @@ import org.jetbrains.jet.lang.psi.JetExpression; import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.BindingContextUtils; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.plugin.JetBundle; import org.jetbrains.jet.plugin.project.WholeProjectAnalyzerFacade; @@ -102,8 +101,7 @@ public class JetAnonymousSuperMacro extends Macro { List result = new ArrayList(); - // TODO: better predicate - for (DeclarationDescriptor descriptor : scope.getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor descriptor : scope.getAllDescriptors()) { if (!(descriptor instanceof ClassDescriptor)) continue; ClassDescriptor classDescriptor = (ClassDescriptor) descriptor; if (!classDescriptor.getModality().isOverridable()) continue; diff --git a/idea/src/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolver.java b/idea/src/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolver.java index 9de0e5f4726..a9b4fe8aeac 100644 --- a/idea/src/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolver.java +++ b/idea/src/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolver.java @@ -36,7 +36,6 @@ import org.jetbrains.jet.lang.psi.JetReferenceExpression; import org.jetbrains.jet.lang.resolve.*; import org.jetbrains.jet.lang.resolve.name.FqName; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.resolve.scopes.RedeclarationHandler; import org.jetbrains.jet.lang.resolve.scopes.WritableScope; @@ -140,7 +139,7 @@ public class StandardLibraryReferenceResolver extends AbstractProjectComponent { return null; } String renderedOriginal = DescriptorRenderer.TEXT.render(originalDescriptor); - for (DeclarationDescriptor member : memberScope.getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor member : memberScope.getAllDescriptors()) { if (renderedOriginal.equals(DescriptorRenderer.TEXT.render(member).replace(TUPLE0_FQ_NAME.getFqName(), JetStandardClasses.UNIT_ALIAS.getName()))) { return member; diff --git a/idea/tests/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolverTest.java b/idea/tests/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolverTest.java index 538e30e24d3..46905c4475a 100644 --- a/idea/tests/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolverTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/references/StandardLibraryReferenceResolverTest.java @@ -23,7 +23,6 @@ import org.jetbrains.jet.lang.descriptors.ClassDescriptor; import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor; import org.jetbrains.jet.lang.descriptors.DeclarationDescriptorVisitorEmptyBodies; import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.types.lang.JetStandardClasses; import org.jetbrains.jet.plugin.PluginTestCaseBase; @@ -89,13 +88,13 @@ public class StandardLibraryReferenceResolverTest extends ResolveTestCase { @Override public Void visitClassDescriptor(ClassDescriptor descriptor, Void data) { descriptors.add(descriptor); - return visitDescriptors(descriptor.getDefaultType().getMemberScope().getAllDescriptors(DescriptorPredicate.all())); + return visitDescriptors(descriptor.getDefaultType().getMemberScope().getAllDescriptors()); } @Override public Void visitNamespaceDescriptor(NamespaceDescriptor descriptor, Void data) { descriptors.add(descriptor); - return visitDescriptors(descriptor.getMemberScope().getAllDescriptors(DescriptorPredicate.all())); + return visitDescriptors(descriptor.getMemberScope().getAllDescriptors()); } @Override diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/intrinsic/Intrinsics.java b/js/js.translator/src/org/jetbrains/k2js/translate/intrinsic/Intrinsics.java index 32cd813c70c..2d54401d80b 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/intrinsic/Intrinsics.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/intrinsic/Intrinsics.java @@ -22,7 +22,6 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.lang.types.lang.JetStandardClasses; @@ -194,7 +193,7 @@ public final class Intrinsics { private void declareOperatorIntrinsics() { IntrinsicDeclarationVisitor visitor = new IntrinsicDeclarationVisitor(); - for (DeclarationDescriptor descriptor : library.getLibraryScope().getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor descriptor : library.getLibraryScope().getAllDescriptors()) { //noinspection NullableProblems descriptor.accept(visitor, null); } @@ -232,7 +231,7 @@ public final class Intrinsics { @Override public Void visitClassDescriptor(@NotNull ClassDescriptor descriptor, @Nullable Void nothing) { for (DeclarationDescriptor memberDescriptor : - descriptor.getDefaultType().getMemberScope().getAllDescriptors(DescriptorPredicate.all())) { + descriptor.getDefaultType().getMemberScope().getAllDescriptors()) { //noinspection NullableProblems memberDescriptor.accept(this, null); } diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java b/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java index da9c94bdbee..59860ed1ea6 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java @@ -21,7 +21,6 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.resolve.name.Name; -import org.jetbrains.jet.lang.resolve.scopes.DescriptorPredicate; import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverDescriptor; import org.jetbrains.jet.lang.types.JetType; @@ -230,7 +229,7 @@ public final class JsDescriptorUtils { @NotNull public static List getContainedDescriptorsWhichAreNotPredefined(@NotNull NamespaceDescriptor namespace) { List result = Lists.newArrayList(); - for (DeclarationDescriptor descriptor : namespace.getMemberScope().getAllDescriptors(DescriptorPredicate.all())) { + for (DeclarationDescriptor descriptor : namespace.getMemberScope().getAllDescriptors()) { if (!AnnotationsUtils.isPredefinedObject(descriptor)) { result.add(descriptor); }