functional expressions: include in find results when implementing classes/implementing methods options are on

This commit is contained in:
Anna Kozlova
2014-04-08 16:45:41 +02:00
parent ab86d61c56
commit f80bf32d98
@@ -346,15 +346,14 @@ public class JavaFindUsagesHandler extends FindUsagesHandler{
}
else if (classOptions.isImplementingClasses){
if (!addImplementingClasses(psiClass, processor, classOptions)) return false;
FunctionalExpressionSearch.search(psiClass, classOptions.searchScope).forEach(new PsiElementProcessorAdapter<PsiFunctionalExpression>(
new PsiElementProcessor<PsiFunctionalExpression>() {
@Override
public boolean execute(@NotNull PsiFunctionalExpression expression) {
return addResult(processor, expression, options);
}
}));
}
FunctionalExpressionSearch.search(psiClass, classOptions.searchScope).forEach(new PsiElementProcessorAdapter<PsiFunctionalExpression>(
new PsiElementProcessor<PsiFunctionalExpression>() {
@Override
public boolean execute(@NotNull PsiFunctionalExpression expression) {
return addResult(processor, expression, options);
}
}));
}
else if (classOptions.isDerivedClasses) {
if (!addInheritors(psiClass, processor, classOptions)) return false;
@@ -372,6 +371,13 @@ public class JavaFindUsagesHandler extends FindUsagesHandler{
final JavaMethodFindUsagesOptions methodOptions = (JavaMethodFindUsagesOptions)options;
if (isAbstract && methodOptions.isImplementingMethods || methodOptions.isOverridingMethods) {
if (!processOverridingMethods(psiMethod, processor, methodOptions)) return false;
FunctionalExpressionSearch.search(psiMethod, methodOptions.searchScope).forEach(new PsiElementProcessorAdapter<PsiFunctionalExpression>(
new PsiElementProcessor<PsiFunctionalExpression>() {
@Override
public boolean execute(@NotNull PsiFunctionalExpression expression) {
return addResult(processor, expression, options);
}
}));
}
}