void (PsiDocTag @NotNull [] tags, @NotNull PsiMethod psiMethod, @NotNull ProblemsHolder holder) { for (PsiDocTag tag : tags) { if (ContainerUtil .exists(tag.getChildren(), e -> e instanceof PsiInlineDocTag && ((PsiInlineDocTag)e).getName().equals("inheritDoc"))) { continue; } if ("return".equals(tag.getName())) { if (!PsiTypes.voidType().equals(psiMethod.getReturnType()) && isEmptyTag(tag)) { String tagText = "<code>@return</code>"; LocalQuickFix fix = new JavaDocFixes.RemoveTagFix("return"); holder.registerProblem(tag.getNameElement(), JavaBundle.message("inspection.javadoc.method.problem.missing.tag.description", tagText), fix); } } else if ("throws".equals(tag.getName()) || "exception".equals(tag.getName())) { if (isEmptyThrowsTag(tag)) { String tagText = "<code>@" + tag.getName() + "</code>"; LocalQuickFix fix = new JavaDocFixes.RemoveTagFix(tag.getName()); holder.registerProblem(tag.getNameElement(), JavaBundle.message("inspection.javadoc.method.problem.missing.tag.description", tagText), fix); } } else if ("param".equals(tag.getName())) { PsiDocTagValue valueElement = tag.getValueElement(); if (valueElement != null && isEmptyParamTag(tag, valueElement)) { String tagText = "<code>@param " + valueElement.getText() + "</code>"; LocalQuickFix fix = new JavaDocFixes.RemoveTagFix("param " + valueElement.getText()); holder.registerProblem(valueElement, JavaBundle.message("inspection.javadoc.method.problem.missing.tag.description", tagText), fix); } } } }