From 0f16f64be6ada8e2ccac1399217b364320a7981f Mon Sep 17 00:00:00 2001 From: Sergey Evdokimov Date: Mon, 27 Dec 2010 13:14:39 +0300 Subject: [PATCH] Pattern GroovyPatterns.methodCall() should work for method with uncompleted parameters. --- .../lang/psi/patterns/GroovyPatterns.java | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/patterns/GroovyPatterns.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/patterns/GroovyPatterns.java index faa3dab52052..b797248684c0 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/patterns/GroovyPatterns.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/patterns/GroovyPatterns.java @@ -68,15 +68,20 @@ public class GroovyPatterns extends PsiJavaPatterns { if (!names.accepts(refExpression.getName(), context)) return false; - PsiElement element = refExpression.resolve(); + for (GroovyResolveResult result : refExpression.multiResolve(false)) { + PsiElement element = result.getElement(); - if (!(element instanceof PsiMethod)) return false; + if (element instanceof PsiMethod) { + PsiClass containingClass = ((PsiMethod)element).getContainingClass(); + if (containingClass != null) { + if (InheritanceUtil.isInheritor(containingClass, className)) { + return true; + } + } + } + } - PsiClass containingClass = ((PsiMethod)element).getContainingClass(); - - if (containingClass == null) return false; - - return InheritanceUtil.isInheritor(containingClass, className); + return false; } }); }