diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/expressions/GrReferenceExpressionImpl.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/expressions/GrReferenceExpressionImpl.java index eb7094ef84a2..16e0cbd26599 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/expressions/GrReferenceExpressionImpl.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/expressions/GrReferenceExpressionImpl.java @@ -83,8 +83,8 @@ public class GrReferenceExpressionImpl extends GrReferenceElementImpl implements if (name == null) return GroovyResolveResult.EMPTY_ARRAY; EnumSet kinds = getParent() instanceof GrReferenceExpression - ? EnumSet.of(ClassHint.ResolveKind.CLASS, ClassHint.ResolveKind.PACKAGE) - : EnumSet.of(ClassHint.ResolveKind.CLASS); + ? ResolverProcessor.RESOLVE_KINDS_CLASS_PACKAGE + : ResolverProcessor.RESOLVE_KINDS_CLASS; boolean hasAt = hasAt(); GroovyResolveResult[] classCandidates = GroovyResolveResult.EMPTY_ARRAY; if (!hasAt) { diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/types/GrCodeReferenceElementImpl.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/types/GrCodeReferenceElementImpl.java index 90dc803b178a..9ec5c74959d3 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/types/GrCodeReferenceElementImpl.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/types/GrCodeReferenceElementImpl.java @@ -400,8 +400,8 @@ public class GrCodeReferenceElementImpl extends GrReferenceElementImpl implement } } } else { - EnumSet kinds = kind == CLASS ? EnumSet.of(ClassHint.ResolveKind.CLASS) : - EnumSet.of(ClassHint.ResolveKind.PACKAGE, ClassHint.ResolveKind.CLASS); + EnumSet kinds = kind == CLASS ? ResolverProcessor.RESOLVE_KINDS_CLASS : + ResolverProcessor.RESOLVE_KINDS_CLASS_PACKAGE; ResolverProcessor processor = new ClassResolverProcessor(refName, ref, kinds); ResolveUtil.treeWalkUp(ref, processor, false); GroovyResolveResult[] candidates = processor.getCandidates(); diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/AccessorResolverProcessor.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/AccessorResolverProcessor.java index 4259aa411df2..2df9d236c169 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/AccessorResolverProcessor.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/AccessorResolverProcessor.java @@ -31,7 +31,7 @@ public class AccessorResolverProcessor extends ResolverProcessor { private final boolean mySearchForGetter; public AccessorResolverProcessor(String name, PsiElement place, boolean searchForGetter) { - super(name, EnumSet.of(ResolveKind.METHOD), place, PsiType.EMPTY_ARRAY); + super(name, RESOLVE_KINDS_METHOD, place, PsiType.EMPTY_ARRAY); mySearchForGetter = searchForGetter; } diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/ClassResolverProcessor.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/ClassResolverProcessor.java index 5b6b419c65e7..233bc6057676 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/ClassResolverProcessor.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/ClassResolverProcessor.java @@ -30,6 +30,6 @@ public class ClassResolverProcessor extends ResolverProcessor { } public ClassResolverProcessor(String refName, PsiElement place) { - super(refName, EnumSet.of(ClassHint.ResolveKind.CLASS), place, PsiType.EMPTY_ARRAY); + super(refName, RESOLVE_KINDS_CLASS, place, PsiType.EMPTY_ARRAY); } } diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/CompletionProcessor.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/CompletionProcessor.java index 86f37a322fca..a7e82f798cd8 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/CompletionProcessor.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/CompletionProcessor.java @@ -43,15 +43,15 @@ public class CompletionProcessor extends ResolverProcessor { } public static ResolverProcessor createPropertyCompletionProcessor(PsiElement place) { - return new CompletionProcessor(place, EnumSet.of(ResolveKind.METHOD, ResolveKind.PROPERTY), null); + return new CompletionProcessor(place, RESOLVE_KINDS_METHOD_PROPERTY, null); } public static ResolverProcessor createRefSameNameProcessor(PsiElement place, String name) { - return new CompletionProcessor(place, EnumSet.of(ResolveKind.METHOD, ResolveKind.PROPERTY), name); + return new CompletionProcessor(place, RESOLVE_KINDS_METHOD_PROPERTY, name); } public static ResolverProcessor createClassCompletionProcessor(PsiElement place) { - return new CompletionProcessor(place, EnumSet.of(ResolveKind.PACKAGE, ResolveKind.CLASS), null); + return new CompletionProcessor(place, RESOLVE_KINDS_CLASS_PACKAGE, null); } @NotNull diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/MethodResolverProcessor.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/MethodResolverProcessor.java index a76c4821db80..8b9be6e07bdd 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/MethodResolverProcessor.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/MethodResolverProcessor.java @@ -65,7 +65,7 @@ public class MethodResolverProcessor extends ResolverProcessor { this(name, place, isConstructor, thisType, argumentTypes, typeArguments, false); } public MethodResolverProcessor(String name, GroovyPsiElement place, boolean isConstructor, PsiType thisType, @Nullable PsiType[] argumentTypes, PsiType[] typeArguments, boolean allVariants) { - super(name, EnumSet.of(ResolveKind.METHOD, ResolveKind.PROPERTY), place, PsiType.EMPTY_ARRAY); + super(name, RESOLVE_KINDS_METHOD_PROPERTY, place, PsiType.EMPTY_ARRAY); myIsConstructor = isConstructor; myThisType = thisType; myArgumentTypes = argumentTypes; diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/PropertyResolverProcessor.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/PropertyResolverProcessor.java index f534236f053f..612808c023c0 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/PropertyResolverProcessor.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/PropertyResolverProcessor.java @@ -32,7 +32,7 @@ public class PropertyResolverProcessor extends ResolverProcessor { private GroovyResolveResult myProperty = null; public PropertyResolverProcessor(String name, PsiElement place) { - super(name, EnumSet.of(ResolveKind.PROPERTY), place, PsiType.EMPTY_ARRAY); + super(name, RESOLVE_KINDS_PROPERTY, place, PsiType.EMPTY_ARRAY); } public boolean execute(PsiElement element, ResolveState state) { diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/ResolverProcessor.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/ResolverProcessor.java index 4f4f05186e6b..f37871018857 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/ResolverProcessor.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/resolve/processors/ResolverProcessor.java @@ -41,6 +41,13 @@ import static org.jetbrains.plugins.groovy.lang.resolve.processors.ClassHint.Res */ public class ResolverProcessor implements PsiScopeProcessor, NameHint, ClassHint, ElementClassHint { public static final Key RESOLVE_CONTEXT = Key.create("RESOLVE_CONTEXT"); + + public static final EnumSet RESOLVE_KINDS_CLASS_PACKAGE = EnumSet.of(CLASS, PACKAGE); + public static final EnumSet RESOLVE_KINDS_CLASS = EnumSet.of(CLASS); + public static final EnumSet RESOLVE_KINDS_METHOD = EnumSet.of(METHOD); + public static final EnumSet RESOLVE_KINDS_METHOD_PROPERTY = EnumSet.of(METHOD, PROPERTY); + public static final EnumSet RESOLVE_KINDS_PROPERTY = EnumSet.of(PROPERTY); + protected String myName; private final EnumSet myResolveTargetKinds; private final Set myProcessedClasses = new HashSet();