PsiElementVisitor (@NotNull final ProblemsHolder holder, boolean isOnTheFly) { return new JavaElementVisitor() { @Override public void visitParameterList(@NotNull PsiParameterList parameterList) { super.visitParameterList(parameterList); if (parameterList.getParent() instanceof PsiLambdaExpression && RemoveRedundantParameterTypesFix.isApplicable(parameterList)) { for (PsiParameter parameter : parameterList.getParameters()) { if (parameter.getTypeElement() != null) { holder.problem(parameter.getTypeElement(), JavaBundle.message("inspection.message.lambda.parameter.type.is.redundant")) .fix(new RemoveRedundantParameterTypesFix((PsiLambdaExpression)parameterList.getParent())).register(); } } } } }; }