[javadoc] don't strip java.lang from subpackages (IDEA-292028)

GitOrigin-RevId: a978c31780b5345dfdbd51610cae43ac7f035960
This commit is contained in:
Anna Kozlova
2022-04-13 20:59:26 +00:00
committed by intellij-monorepo-bot
parent efb2b3480a
commit 180db12dfe
4 changed files with 17 additions and 4 deletions
@@ -1,4 +1,4 @@
// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.codeInsight.javadoc;
import com.intellij.openapi.diagnostic.Logger;
@@ -30,6 +30,7 @@ public final class JavaDocUtil {
private static final Logger LOG = Logger.getInstance(JavaDocUtil.class);
@NonNls private static final Pattern ourTypePattern = Pattern.compile("[ ]+[^ ^\\[^\\]]");
private static final String JAVA_LANG = "java.lang.";
private JavaDocUtil() {
}
@@ -303,9 +304,10 @@ public final class JavaDocUtil {
catch (IndexNotReadyException e) {
LOG.debug(e);
}
return manager.areElementsEquivalent(aClass, resolvedClass)
? shortName
: StringUtil.trimStart(qName, "java.lang.");
if (manager.areElementsEquivalent(aClass, resolvedClass)) {
return shortName;
}
return JAVA_LANG.length() + shortName.length() == qName.length() ? StringUtil.trimStart(qName, JAVA_LANG) : qName;
}
public static String getLabelText(Project project, PsiManager manager, String refText, PsiElement context) {
@@ -0,0 +1,5 @@
<html><head><base href="placeholder"></head><body><div class="bottom"><icon src="AllIcons.Nodes.Class">&nbsp;<a href="psi_element://java.lang.Class"><code><span style="color:#000000;">java.lang.Class</span><span style="">&lt;</span><span style="color:#20999d;">T</span><span style="">&gt;</span></code></a></div><div class='definition'><pre><font color=red>@<span style="color:#808000;">CallerSensitive</span></font>&nbsp;
<span style="color:#808000;">@</span><a href="psi_element://org.jetbrains.annotations.NotNull"><code><span style="color:#808000;">NotNull</span></code></a><a href="external.annotations"><icon src="AllIcons.Ide.External_link_arrow"></a>&nbsp;
<span style="color:#808000;">@</span><a href="psi_element://org.jetbrains.annotations.Contract"><code><span style="color:#808000;">Contract</span></code></a><span style="">(</span><span style="">pure</span><span style=""> = </span><span style="color:#000080;font-weight:bold;">true</span><span style="">)</span><a href="external.annotations"><icon src="AllIcons.Ide.External_link_arrow"></a>&nbsp;
<span style="color:#000080;font-weight:bold;">public</span>&nbsp;<a href="psi_element://java.lang.reflect.Constructor"><code><span style="color:#000000;">java.lang.reflect.Constructor</span></code></a><span style="">&lt;</span><span style="">?</span><span style="">&gt;</span><span style="">[]</span>&nbsp;<span style="color:#000000;">getDeclaredConstructors</span><span style="">(</span><span style="">)</span>
<span style="color:#000080;font-weight:bold;">throws</span>&nbsp;<a href="psi_element://java.lang.SecurityException"><code><span style="color:#000000;">SecurityException</span></code></a></pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Throws:</td><td valign='top'><p><a href="psi_element://java.lang.SecurityException"><code><span style="color:#0000ff;">SecurityException</span></code></a></td></table><div class="bottom-no-content"><icon src="AllIcons.Nodes.PpLibFolder"/>&nbsp;&lt; java 10 &gt;</div>
@@ -0,0 +1,5 @@
class Test {
void constructors(Class<?> clazz) {
System.out.println(Arrays.toString(clazz.getDeclared<caret>Constructors()));
}
}
@@ -127,6 +127,7 @@ public class JavaDocInfoGeneratorTest extends JavaCodeInsightTestCase {
public void testUnknownInlineMultilineTag() { doTestClass(); }
public void testUnknownTag() { doTestMethod(); }
public void testUnknownClassTag() { doTestClass(); }
public void testReflectConstructor() { useJava10(); doTestAtCaret(); }
public void testRepeatableAnnotations() {
useJava8();