From dad46c21f182eb2b9e8e6aa41cef192a5c20507d Mon Sep 17 00:00:00 2001 From: Roman Shevchenko Date: Fri, 15 Jun 2018 12:19:29 +0300 Subject: [PATCH] [java] returns type parameter name to "missing tag" warning --- .../javaDoc/JavadocHighlightUtil.java | 16 ++++++++++------ .../daemonCodeAnalyzer/javaDoc/TypeParam.java | 3 +-- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/javaDoc/JavadocHighlightUtil.java b/java/java-analysis-impl/src/com/intellij/codeInspection/javaDoc/JavadocHighlightUtil.java index 7c20c0ffc9c9..face9b5efa9a 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/javaDoc/JavadocHighlightUtil.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/javaDoc/JavadocHighlightUtil.java @@ -1,4 +1,4 @@ -// Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. +// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package com.intellij.codeInspection.javaDoc; import com.intellij.codeInspection.InspectionsBundle; @@ -323,14 +323,14 @@ public class JavadocHighlightUtil { }); } - static void checkMissingTypeParamTags(@NotNull PsiTypeParameterListOwner parameterListOwner, + static void checkMissingTypeParamTags(@NotNull PsiTypeParameterListOwner owner, @NotNull PsiDocTag[] tags, @NotNull PsiElement toHighlight, @NotNull ProblemHolder holder) { - if (parameterListOwner.hasTypeParameters()) { + if (owner.hasTypeParameters()) { List absentParameters = null; - for (PsiTypeParameter typeParameter : parameterListOwner.getTypeParameters()) { + for (PsiTypeParameter typeParameter : owner.getTypeParameters()) { if (!hasTagForParameter(tags, typeParameter)) { (absentParameters = list(absentParameters)).add(typeParameter); } @@ -338,8 +338,12 @@ public class JavadocHighlightUtil { if (absentParameters != null) { for (PsiTypeParameter typeParameter : absentParameters) { - String message = InspectionsBundle.message("inspection.javadoc.problem.missing.tag", "@param"); - holder.problem(toHighlight, message, holder.addMissingTagFix("param", "<" + typeParameter.getName() + ">")); + String name = typeParameter.getName(); + if (name != null) { + String tagText = "<" + name + ">"; + String message = InspectionsBundle.message("inspection.javadoc.method.problem.missing.param.tag", tagText); + holder.problem(toHighlight, message, holder.addMissingTagFix("param", "<" + name + ">")); + } } } } diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/javaDoc/TypeParam.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/javaDoc/TypeParam.java index 144f947abb73..f7f4b20d32dd 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/javaDoc/TypeParam.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/javaDoc/TypeParam.java @@ -1,6 +1,5 @@ class Test { - - /** + /** * period. */ public void f() {}