mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-187505 Locally-referenced images are not displayed in quick doc
This commit is contained in:
@@ -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.codeInsight.javadoc;
|
||||
|
||||
import com.intellij.codeInsight.AnnotationUtil;
|
||||
@@ -25,6 +25,7 @@ import com.intellij.openapi.util.Pair;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.openapi.vfs.CharsetToolkit;
|
||||
import com.intellij.openapi.vfs.VfsUtilCore;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.impl.JavaConstantExpressionEvaluator;
|
||||
@@ -50,6 +51,7 @@ import org.jetbrains.annotations.Nullable;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.URL;
|
||||
import java.util.*;
|
||||
import java.util.function.Supplier;
|
||||
import java.util.regex.Matcher;
|
||||
@@ -212,6 +214,7 @@ public class JavaDocInfoGenerator {
|
||||
public String generateFileInfo() {
|
||||
StringBuilder buffer = new StringBuilder();
|
||||
if (myElement instanceof PsiFile) {
|
||||
generatePrologue(buffer);
|
||||
|
||||
VirtualFile virtualFile = ((PsiFile)myElement).getVirtualFile();
|
||||
if (virtualFile != null) buffer.append(virtualFile.getPresentableUrl());
|
||||
@@ -354,40 +357,32 @@ public class JavaDocInfoGenerator {
|
||||
return packageName;
|
||||
}
|
||||
|
||||
/**
|
||||
* To be deleted in 2018.2
|
||||
*/
|
||||
@Deprecated
|
||||
public boolean generateDocInfoCore(StringBuilder buffer, boolean generatePrologueAndEpilogue) {
|
||||
return generateDocInfoCore(buffer);
|
||||
}
|
||||
|
||||
public boolean generateDocInfoCore(StringBuilder buffer) {
|
||||
public boolean generateDocInfoCore(StringBuilder buffer, boolean generatePrologue) {
|
||||
if (myElement instanceof PsiClass) {
|
||||
generateClassJavaDoc(buffer, (PsiClass)myElement);
|
||||
generateClassJavaDoc(buffer, (PsiClass)myElement, generatePrologue);
|
||||
}
|
||||
else if (myElement instanceof PsiMethod) {
|
||||
generateMethodJavaDoc(buffer, (PsiMethod)myElement);
|
||||
generateMethodJavaDoc(buffer, (PsiMethod)myElement, generatePrologue);
|
||||
}
|
||||
else if (myElement instanceof PsiParameter) {
|
||||
generateMethodParameterJavaDoc(buffer, (PsiParameter)myElement);
|
||||
generateMethodParameterJavaDoc(buffer, (PsiParameter)myElement, generatePrologue);
|
||||
}
|
||||
else if (myElement instanceof PsiField) {
|
||||
generateFieldJavaDoc(buffer, (PsiField)myElement);
|
||||
generateFieldJavaDoc(buffer, (PsiField)myElement, generatePrologue);
|
||||
}
|
||||
else if (myElement instanceof PsiVariable) {
|
||||
generateVariableJavaDoc(buffer, (PsiVariable)myElement);
|
||||
generateVariableJavaDoc(buffer, (PsiVariable)myElement, generatePrologue);
|
||||
}
|
||||
else if (myElement instanceof PsiDirectory) {
|
||||
PsiPackage aPackage = JavaDirectoryService.getInstance().getPackage((PsiDirectory)myElement);
|
||||
if (aPackage == null) return false;
|
||||
generatePackageJavaDoc(buffer, aPackage);
|
||||
generatePackageJavaDoc(buffer, aPackage, generatePrologue);
|
||||
}
|
||||
else if (myElement instanceof PsiPackage) {
|
||||
generatePackageJavaDoc(buffer, (PsiPackage)myElement);
|
||||
generatePackageJavaDoc(buffer, (PsiPackage)myElement, generatePrologue);
|
||||
}
|
||||
else if (myElement instanceof PsiJavaModule) {
|
||||
generateModuleJavaDoc(buffer, (PsiJavaModule)myElement);
|
||||
generateModuleJavaDoc(buffer, (PsiJavaModule)myElement, generatePrologue);
|
||||
}
|
||||
else {
|
||||
return false;
|
||||
@@ -414,7 +409,7 @@ public class JavaDocInfoGenerator {
|
||||
public String generateDocInfo(List<String> docURLs) {
|
||||
StringBuilder buffer = new StringBuilder();
|
||||
|
||||
if (!generateDocInfoCore(buffer)) {
|
||||
if (!generateDocInfoCore(buffer, true)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -463,9 +458,11 @@ public class JavaDocInfoGenerator {
|
||||
return false;
|
||||
}
|
||||
|
||||
private void generateClassJavaDoc(StringBuilder buffer, PsiClass aClass) {
|
||||
private void generateClassJavaDoc(StringBuilder buffer, PsiClass aClass, boolean generatePrologue) {
|
||||
if (aClass instanceof PsiAnonymousClass) return;
|
||||
|
||||
if (generatePrologue) generatePrologue(buffer);
|
||||
|
||||
buffer.append(DocumentationMarkup.DEFINITION_START);
|
||||
PsiFile file = aClass.getContainingFile();
|
||||
if (file instanceof PsiJavaFile) {
|
||||
@@ -626,7 +623,8 @@ public class JavaDocInfoGenerator {
|
||||
return comment;
|
||||
}
|
||||
|
||||
private void generateFieldJavaDoc(StringBuilder buffer, PsiField field) {
|
||||
private void generateFieldJavaDoc(StringBuilder buffer, PsiField field, boolean generatePrologue) {
|
||||
if (generatePrologue) generatePrologue(buffer);
|
||||
|
||||
buffer.append(DocumentationMarkup.DEFINITION_START);
|
||||
generateLinkToParentIfNeeded(buffer, field);
|
||||
@@ -678,7 +676,8 @@ public class JavaDocInfoGenerator {
|
||||
}
|
||||
|
||||
// not a javadoc in fact..
|
||||
private static void generateVariableJavaDoc(StringBuilder buffer, PsiVariable variable) {
|
||||
private void generateVariableJavaDoc(StringBuilder buffer, PsiVariable variable, boolean generatePrologue) {
|
||||
if (generatePrologue) generatePrologue(buffer);
|
||||
|
||||
buffer.append(DocumentationMarkup.DEFINITION_START);
|
||||
String modifiers = PsiFormatUtil.formatModifiers(variable, PsiFormatUtilBase.JAVADOC_MODIFIERS_ONLY);
|
||||
@@ -700,7 +699,7 @@ public class JavaDocInfoGenerator {
|
||||
|
||||
}
|
||||
|
||||
private void generatePackageJavaDoc(final StringBuilder buffer, final PsiPackage psiPackage) {
|
||||
private void generatePackageJavaDoc(final StringBuilder buffer, final PsiPackage psiPackage, boolean generatePrologue) {
|
||||
for (PsiDirectory directory : psiPackage.getDirectories(new EverythingGlobalScope(myProject))) {
|
||||
final PsiFile packageInfoFile = directory.findFile(PsiPackage.PACKAGE_INFO_FILE);
|
||||
if (packageInfoFile != null) {
|
||||
@@ -708,6 +707,7 @@ public class JavaDocInfoGenerator {
|
||||
if (node != null) {
|
||||
final ASTNode docCommentNode = findRelevantCommentNode(node);
|
||||
if (docCommentNode != null) {
|
||||
if (generatePrologue) generatePrologue(buffer);
|
||||
generateCommonSection(buffer, (PsiDocComment)docCommentNode.getPsi());
|
||||
buffer.append(DocumentationMarkup.SECTIONS_END);
|
||||
break;
|
||||
@@ -716,13 +716,14 @@ public class JavaDocInfoGenerator {
|
||||
}
|
||||
PsiFile packageHtmlFile = directory.findFile("package.html");
|
||||
if (packageHtmlFile != null) {
|
||||
generatePackageHtmlJavaDoc(buffer, packageHtmlFile);
|
||||
generatePackageHtmlJavaDoc(buffer, packageHtmlFile, generatePrologue);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void generateModuleJavaDoc(StringBuilder buffer, PsiJavaModule module) {
|
||||
private void generateModuleJavaDoc(StringBuilder buffer, PsiJavaModule module, boolean generatePrologue) {
|
||||
if (generatePrologue) generatePrologue(buffer);
|
||||
|
||||
buffer.append(DocumentationMarkup.DEFINITION_START);
|
||||
generateAnnotations(buffer, module, SignaturePlace.Javadoc, true);
|
||||
@@ -770,7 +771,7 @@ public class JavaDocInfoGenerator {
|
||||
}
|
||||
}
|
||||
|
||||
private void generatePackageHtmlJavaDoc(final StringBuilder buffer, final PsiFile packageHtmlFile) {
|
||||
private void generatePackageHtmlJavaDoc(final StringBuilder buffer, final PsiFile packageHtmlFile, boolean generatePrologue) {
|
||||
String htmlText = packageHtmlFile.getText();
|
||||
|
||||
try {
|
||||
@@ -796,6 +797,7 @@ public class JavaDocInfoGenerator {
|
||||
return;
|
||||
}
|
||||
|
||||
if (generatePrologue) generatePrologue(buffer);
|
||||
generateCommonSection(buffer, docComment);
|
||||
buffer.append(DocumentationMarkup.SECTIONS_END);
|
||||
}
|
||||
@@ -895,9 +897,10 @@ public class JavaDocInfoGenerator {
|
||||
AnnotationUtil.isAnnotated((PsiClass)annotationType, CommonClassNames.JAVA_LANG_ANNOTATION_REPEATABLE, 0);
|
||||
}
|
||||
|
||||
private void generateMethodParameterJavaDoc(StringBuilder buffer, PsiParameter parameter) {
|
||||
private void generateMethodParameterJavaDoc(StringBuilder buffer, PsiParameter parameter, boolean generatePrologue) {
|
||||
String parameterName = parameter.getName();
|
||||
|
||||
if (generatePrologue) generatePrologue(buffer);
|
||||
|
||||
buffer.append(DocumentationMarkup.DEFINITION_START);
|
||||
|
||||
@@ -964,7 +967,8 @@ public class JavaDocInfoGenerator {
|
||||
return buffer.toString();
|
||||
}
|
||||
|
||||
private void generateMethodJavaDoc(StringBuilder buffer, PsiMethod method) {
|
||||
private void generateMethodJavaDoc(StringBuilder buffer, PsiMethod method, boolean generatePrologue) {
|
||||
if (generatePrologue) generatePrologue(buffer);
|
||||
|
||||
buffer.append(DocumentationMarkup.DEFINITION_START);
|
||||
generateLinkToParentIfNeeded(buffer, method);
|
||||
@@ -1182,6 +1186,24 @@ public class JavaDocInfoGenerator {
|
||||
}
|
||||
}
|
||||
|
||||
protected void generatePrologue(StringBuilder buffer) {
|
||||
URL baseUrl = getBaseUrl();
|
||||
if (baseUrl != null) {
|
||||
buffer.append("<html><head><base href=\"").append(baseUrl).append("\"></head><body>");
|
||||
}
|
||||
}
|
||||
|
||||
private URL getBaseUrl() {
|
||||
if (myElement == null) return null;
|
||||
PsiElement element = myElement.getNavigationElement();
|
||||
if (element == null) return null;
|
||||
PsiFile file = element.getContainingFile();
|
||||
if (file == null) return null;
|
||||
VirtualFile vFile = file.getVirtualFile();
|
||||
if (vFile == null) return null;
|
||||
return VfsUtilCore.convertToURL(vFile.getUrl());
|
||||
}
|
||||
|
||||
private void generateDescription(StringBuilder buffer, PsiDocComment comment) {
|
||||
PsiElement[] elements = comment.getDescriptionElements();
|
||||
generateValue(buffer, elements, ourEmptyElementsProvider);
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
<div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br><font color=red>@Nullable</font>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br><font color=red>@Nullable</font>
|
||||
@<a href="psi_element://java.lang.Deprecated"><code>Deprecated</code></a>
|
||||
public <a href="psi_element://java.lang.String"><code>String</code></a> <b>field</b> = null</pre></div><table class='sections'></table>
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public void <b>foo</b>(@<a href="psi_element://java.lang.Deprecated"><code>Deprecated</code></a> <a href="psi_element://java.lang.String"><code>String</code></a> s,
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public void <b>foo</b>(@<a href="psi_element://java.lang.Deprecated"><code>Deprecated</code></a> <a href="psi_element://java.lang.String"><code>String</code></a> s,
|
||||
@<a href="psi_element://java.lang.Deprecated"><code>Deprecated</code></a> <a href="psi_element://java.lang.String"><code>String</code></a> p)</pre></div><table class='sections'><p></table>
|
||||
@@ -1,3 +1,3 @@
|
||||
<div class='definition'><pre>public void <b>foo</b>()</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Description copied from interface:</td><td><p><a href="psi_element://Foo"><code>Foo</code></a><br>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>public void <b>foo</b>()</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Description copied from interface:</td><td><p><a href="psi_element://Foo"><code>Foo</code></a><br>
|
||||
some javadoc
|
||||
</td><tr><td valign='top' class='section'><p>Specified by:</td><td><p><a href="psi_element://Foo#foo()"><code>foo</code></a> in interface <a href="psi_element://Foo"><code>Foo</code></a></td></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public void <b>foo</b>()</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>apiNote:</td><td><p> my api note </td><tr><td valign='top' class='section'><p>implSpec:</td><td><p> my impl spec </td><tr><td valign='top' class='section'><p>implNote:</td><td><p> my impl note</td></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public void <b>foo</b>()</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>apiNote:</td><td><p> my api note </td><tr><td valign='top' class='section'><p>implSpec:</td><td><p> my impl spec </td><tr><td valign='top' class='section'><p>implNote:</td><td><p> my impl note</td></table>
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre>class <b>C</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>C</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'> Some <a href="http://dummy.link">link</a> </div><table class='sections'><p></table>
|
||||
@@ -1,3 +1,3 @@
|
||||
<div class='definition'><pre>class <b>MethodTypeParam</b><T>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>MethodTypeParam</b><T>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'>
|
||||
</div><table class='sections'><p><tr><td valign='top' class='section'><p>Type parameters:</td><td><T> – type param</td></table>
|
||||
@@ -1,3 +1,3 @@
|
||||
<div class='definition'><pre>@<a href="psi_element://Bar"><code>Bar</code></a>(<a href="psi_element://Baz#CONST"><code>Baz.CONST</code></a>, value = {<a href="psi_element://Baz#CONST"><code>Baz.CONST</code></a>})
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>@<a href="psi_element://Bar"><code>Bar</code></a>(<a href="psi_element://Baz#CONST"><code>Baz.CONST</code></a>, value = {<a href="psi_element://Baz#CONST"><code>Baz.CONST</code></a>})
|
||||
class <b>Foo</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><table class='sections'></table>
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre><a href="psi_element://Foo"><code>Foo</code></a><br>int <b>foo</b></pre></div><div class='content'>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Foo"><code>Foo</code></a><br>int <b>foo</b></pre></div><div class='content'>
|
||||
<pre>
|
||||
<code>
|
||||
class Clazzz {
|
||||
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public <a href="psi_element://java.lang.String"><code>String</code></a> <b>field</b> = foo("", "")</pre></div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public <a href="psi_element://java.lang.String"><code>String</code></a> <b>field</b> = foo("", "")</pre></div><table class='sections'></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public static final int <b>field</b> = 1 + 1<span class='grayed'> = 2</span></pre></div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public static final int <b>field</b> = 1 + 1<span class='grayed'> = 2</span></pre></div><table class='sections'></table>
|
||||
@@ -1,3 +1,3 @@
|
||||
<div class='definition'><pre><a href="psi_element://FooBar"><code>FooBar</code></a><br>public <a href="psi_element://java.lang.String"><code>String</code></a> <b>getMyFoo</b>()</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Description copied from field:</td><td><p><a href="psi_element://FooBar#myFoo"><code>myFoo</code></a><br>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://FooBar"><code>FooBar</code></a><br>public <a href="psi_element://java.lang.String"><code>String</code></a> <b>getMyFoo</b>()</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Description copied from field:</td><td><p><a href="psi_element://FooBar#myFoo"><code>myFoo</code></a><br>
|
||||
foo bar baz
|
||||
</td></table>
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre>java.lang<br>public final class <b>String</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>java.lang<br>public final class <b>String</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a>
|
||||
implements <a href="psi_element://java.io.Serializable"><code>java.io.Serializable</code></a>, <a href="psi_element://java.lang.Comparable"><code>Comparable</code></a><<a href="psi_element://java.lang.String"><code>String</code></a>>, <a href="psi_element://java.lang.CharSequence"><code>CharSequence</code></a></pre></div><div class='content'>
|
||||
The <code>String</code> class represents character strings. All
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre><a href="psi_element://java.util.List"><code>java.util.List<E></code></a><br><i>@<a href="psi_element://org.jetbrains.annotations.Contract"><code>Contract</code></a>(pure = true)</i>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://java.util.List"><code>java.util.List<E></code></a><br><i>@<a href="psi_element://org.jetbrains.annotations.Contract"><code>Contract</code></a>(pure = true)</i>
|
||||
public abstract boolean <b>contains</b>(<a href="psi_element://java.lang.Object"><code>Object</code></a> o)</pre></div><div class='content'>
|
||||
Returns <tt>true</tt> if this list contains the specified element.
|
||||
More formally, returns <tt>true</tt> if and only if this list contains
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre><a href="psi_element://My"><code>My</code></a><br><i>@<a href="psi_element://org.jetbrains.annotations.Contract"><code>Contract</code></a>(pure = true)</i>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://My"><code>My</code></a><br><i>@<a href="psi_element://org.jetbrains.annotations.Contract"><code>Contract</code></a>(pure = true)</i>
|
||||
boolean <b>contains</b>(<a href="psi_element://java.lang.Object"><code>Object</code></a> o)</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Description copied from interface:</td><td><p><a href="psi_element://java.util.Collection"><code>java.util.Collection</code></a><br>
|
||||
Returns <tt>true</tt> if this collection contains the specified element.
|
||||
More formally, returns <tt>true</tt> if and only if this collection
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre>class <b>C</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>C</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'>
|
||||
a << b
|
||||
</div><table class='sections'><p></table>
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre>class <b>C</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>C</b>
|
||||
extends java.lang.Object</pre></div><div class='content'>
|
||||
some text
|
||||
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre><a href="psi_element://E"><code>E</code></a><br><a href="psi_element://E"><code>E</code></a> <b>A</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://E"><code>E</code></a><br><a href="psi_element://E"><code>E</code></a> <b>A</b>
|
||||
Enum constant ordinal: 0</pre></div><table class='sections'></table>
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre><a href="psi_element://En"><code>En</code></a><br><i>@<a href="psi_element://org.jetbrains.annotations.Contract"><code>Contract</code></a>(pure = true)</i>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://En"><code>En</code></a><br><i>@<a href="psi_element://org.jetbrains.annotations.Contract"><code>Contract</code></a>(pure = true)</i>
|
||||
static int <b>valueOf</b>(int i)</pre></div><div class='content'>
|
||||
myjavadoc
|
||||
<p></div><table class='sections'><p><tr><td valign='top' class='section'><p>Params:</td><td>i – </td><tr><td valign='top' class='section'><p>Returns:</td><td><p></td><tr><td valign='top' class='section'><p><i>Inferred</i> annotations:</td><td><p><i>@<a href="psi_element://org.jetbrains.annotations.Contract"><code>org.jetbrains.annotations.Contract</code></a>(pure = true)</i></td></table>
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre>class <b>Pattern</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>Pattern</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'>
|
||||
\W \n
|
||||
</div><table class='sections'><p></table>
|
||||
@@ -1,3 +1,3 @@
|
||||
<div class='definition'><pre><a href="psi_element://Foo"><code>Foo</code></a><br>int <b>foo</b></pre></div><div class='content'>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Foo"><code>Foo</code></a><br>int <b>foo</b></pre></div><div class='content'>
|
||||
&gt; is > &lt; is < &quot; is "
|
||||
</div><table class='sections'><p></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static void <b>JAVADOC_ME</b>()</pre></div><div class='content'> The value of B is <a href="psi_element://A#B">"a<b"</a>. <p></div><table class='sections'><p></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static void <b>JAVADOC_ME</b>()</pre></div><div class='content'> The value of B is <a href="psi_element://A#B">"a<b"</a>. <p></div><table class='sections'><p></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static int[] <b>x</b> = new int[]{1, 2, 3}</pre></div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static int[] <b>x</b> = new int[]{1, 2, 3}</pre></div><table class='sections'></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static <font color=red>java.util.function.Consumer<Integer></font> <b>F</b> = i -> System.out.println(i)</pre></div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static <font color=red>java.util.function.Consumer<Integer></font> <b>F</b> = i -> System.out.println(i)</pre></div><table class='sections'></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static int[] <b>x</b> = new int[1]</pre></div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static int[] <b>x</b> = new int[1]</pre></div><table class='sections'></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static int <b>JAVADOC_ME</b> = 23</pre></div><div class='content'> The value of the field is 23. </div><table class='sections'><p></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static int <b>JAVADOC_ME</b> = 23</pre></div><div class='content'> The value of the field is 23. </div><table class='sections'><p></table>
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre>class <b>htmlLink</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>htmlLink</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'> <a href="psi_element://other">link</a> </div><table class='sections'><p></table>
|
||||
+1
-1
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre>pack<br>class <b>htmlLinkDeep</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>pack<br>class <b>htmlLinkDeep</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'> <a href="psi_element://other">link</a> </div><table class='sections'><p></table>
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre>pack<br>class <b>A</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>pack<br>class <b>A</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'>
|
||||
<a href="psi_element://pack###section2">link</a>
|
||||
</div><table class='sections'><p></table>
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre>class <b>Test</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>Test</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'>
|
||||
<a name="section1">section one</a>
|
||||
text
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre><a href="psi_element://Idea4780"><code>Idea4780</code></a><br>public <a href="psi_element://java.lang.Object"><code>Object</code></a> <b>read</b>()
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Idea4780"><code>Idea4780</code></a><br>public <a href="psi_element://java.lang.Object"><code>Object</code></a> <b>read</b>()
|
||||
throws <a href="psi_element://java.io.IOException"><code>IOException</code></a></pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Throws:</td><td><p><a href="psi_element://java.io.IOException"><code>IOException</code></a> – if an I/O error occurs while reading. <p><a href="psi_element://java.io.EOFException"><code>EOFException</code></a> – if this source is already closed when the <code>read()</code> is called, or is closed during the <code>read()</code>. <p><font color=red>InterruptedIOException</font> – if the reading thread is interrupted.</td></table>
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre><a href="psi_element://InheritedDocInThrows"><code>InheritedDocInThrows</code></a><br>void <b>foo</b>()
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://InheritedDocInThrows"><code>InheritedDocInThrows</code></a><br>void <b>foo</b>()
|
||||
throws <a href="psi_element://java.io.IOException"><code>IOException</code></a></pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Overrides:</td><td><p><a href="psi_element://A#foo()"><code>foo</code></a> in class <a href="psi_element://A"><code>A</code></a></td><tr><td valign='top' class='section'><p>Throws:</td><td><p><a href="psi_element://java.io.IOException"><code>IOException</code></a> – la-la-la</td></table>
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre><a href="psi_element://InheritedDocInThrows1"><code>InheritedDocInThrows1</code></a><br>void <b>foo</b>()
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://InheritedDocInThrows1"><code>InheritedDocInThrows1</code></a><br>void <b>foo</b>()
|
||||
throws <a href="psi_element://java.io.IOException"><code>IOException</code></a></pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Overrides:</td><td><p><a href="psi_element://A#foo()"><code>foo</code></a> in class <a href="psi_element://A"><code>A</code></a></td><tr><td valign='top' class='section'><p>Throws:</td><td><p><a href="psi_element://java.io.IOException"><code>IOException</code></a> – comment</td></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://java.lang.String"><code>String</code></a> <b>s</b></pre></div><div class='content'>s – String parameter.</div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://java.lang.String"><code>String</code></a> <b>s</b></pre></div><div class='content'>s – String parameter.</div><table class='sections'></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public <a href="psi_element://java.lang.String"><code>String</code></a> <b>strings</b> = "A<BLANK>B"</pre></div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public <a href="psi_element://java.lang.String"><code>String</code></a> <b>strings</b> = "A<BLANK>B"</pre></div><table class='sections'></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public <a href="psi_element://java.util.List"><code>List</code></a><<a href="psi_element://java.lang.String"><code>String</code></a>> <b>strings</b> = new <a href="psi_element://java.util.ArrayList"><code>ArrayList</code></a><<a href="psi_element://java.lang.String"><code>String</code></a>>(new <a href="psi_element://java.util.ArrayList"><code>ArrayList</code></a><<a href="psi_element://java.lang.Integer"><code>Integer</code></a>>(), Collections.singleton(new <a href="psi_element://java.util.ArrayList"><code>ArrayList</code></a><<a href="psi_element://java.lang.Double"><code>Double</code></a>>()))</pre></div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public <a href="psi_element://java.util.List"><code>List</code></a><<a href="psi_element://java.lang.String"><code>String</code></a>> <b>strings</b> = new <a href="psi_element://java.util.ArrayList"><code>ArrayList</code></a><<a href="psi_element://java.lang.String"><code>String</code></a>>(new <a href="psi_element://java.util.ArrayList"><code>ArrayList</code></a><<a href="psi_element://java.lang.Integer"><code>Integer</code></a>>(), Collections.singleton(new <a href="psi_element://java.util.ArrayList"><code>ArrayList</code></a><<a href="psi_element://java.lang.Double"><code>Double</code></a>>()))</pre></div><table class='sections'></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public int <b>field</b> = anotherField</pre></div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public int <b>field</b> = anotherField</pre></div><table class='sections'></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre>int <b>a</b></pre></div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>int <b>a</b></pre></div><table class='sections'></table>
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre>class <b>Test</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>Test</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'> <pre>abc</pre> </div><table class='sections'><p></table>
|
||||
@@ -1,3 +1,3 @@
|
||||
<div class='definition'><pre><a href="psi_element://Foo"><code>Foo</code></a><br>int <b>foo</b></pre></div><div class='content'>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Foo"><code>Foo</code></a><br>int <b>foo</b></pre></div><div class='content'>
|
||||
foo<>
|
||||
</div><table class='sections'><p></table>
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre>class <b>Foo</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>Foo</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><table class='sections'></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://Bar"><code>Bar</code></a><br>void <b>m</b>(int bar)</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Overrides:</td><td><p><a href="psi_element://Foo#m(int)"><code>m</code></a> in class <a href="psi_element://Foo"><code>Foo</code></a></td><tr><td valign='top' class='section'><p>Params:</td><td>bar – description</td></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Bar"><code>Bar</code></a><br>void <b>m</b>(int bar)</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Overrides:</td><td><p><a href="psi_element://Foo#m(int)"><code>m</code></a> in class <a href="psi_element://Foo"><code>Foo</code></a></td><tr><td valign='top' class='section'><p>Params:</td><td>bar – description</td></table>
|
||||
+1
-1
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://Bar"><code>Bar</code></a><br><U> void <b>m</b>(U u)</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Overrides:</td><td><p><a href="psi_element://Foo#m(java.lang.Object)"><code>m</code></a> in class <a href="psi_element://Foo"><code>Foo</code></a></td><tr><td valign='top' class='section'><p>Type parameters:</td><td><U> – description</td></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Bar"><code>Bar</code></a><br><U> void <b>m</b>(U u)</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Overrides:</td><td><p><a href="psi_element://Foo#m(java.lang.Object)"><code>m</code></a> in class <a href="psi_element://Foo"><code>Foo</code></a></td><tr><td valign='top' class='section'><p>Type parameters:</td><td><U> – description</td></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public byte[] <b>bytes</b> = "&amp;".getBytes()</pre></div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public byte[] <b>bytes</b> = "&amp;".getBytes()</pre></div><table class='sections'></table>
|
||||
@@ -1,3 +1,3 @@
|
||||
<div class='definition'><pre><a href="psi_element://Producer"><code>Producer<T></code></a><br><E extends <a href="psi_element://java.lang.Exception"><code>Exception</code></a>> void <b>drainTo</b>(<a href="psi_element://Consumer"><code>Consumer</code></a><? super T, E> consumer,
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Producer"><code>Producer<T></code></a><br><E extends <a href="psi_element://java.lang.Exception"><code>Exception</code></a>> void <b>drainTo</b>(<a href="psi_element://Consumer"><code>Consumer</code></a><? super T, E> consumer,
|
||||
<a href="psi_element://java.lang.Object"><code>Object</code></a> someParameter)
|
||||
throws <a href="psi_element://E"><code>E</code></a></pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Throws:</td><td><p><a href="psi_element://E"><code>E</code></a></td></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://MethodTypeParam"><code>MethodTypeParam</code></a><br><T> void <b>foo</b>(T t)</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Type parameters:</td><td><T> – type param</td></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://MethodTypeParam"><code>MethodTypeParam</code></a><br><T> void <b>foo</b>(T t)</pre></div><table class='sections'><p><tr><td valign='top' class='section'><p>Type parameters:</td><td><T> – type param</td></table>
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre>class <b>Test</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>Test</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'> <pre>a bc</pre> </div><table class='sections'><p></table>
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class='definition'><pre>class <b>Foo</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>Foo</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'> foobar </div><table class='sections'><p></table>
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public <a href="psi_element://java.lang.String"><code>String</code></a> <b>field</b> = null</pre></div><div class='content'>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://Test"><code>Test</code></a><br>public <a href="psi_element://java.lang.String"><code>String</code></a> <b>field</b> = null</pre></div><div class='content'>
|
||||
<pre>
|
||||
foo
|
||||
<p></p>
|
||||
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre>int <b>i</b></pre></div><div class='content'>i – input</div><table class='sections'></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>int <b>i</b></pre></div><div class='content'>i – input</div><table class='sections'></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static int <b>JAVADOC_ME</b></pre></div><div class='content'> Test </div><table class='sections'><p></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static int <b>JAVADOC_ME</b></pre></div><div class='content'> Test </div><table class='sections'><p></table>
|
||||
@@ -1,4 +1,4 @@
|
||||
<div class='definition'><pre>class <b>Test</b>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre>class <b>Test</b>
|
||||
extends <a href="psi_element://java.lang.Object"><code>Object</code></a></pre></div><div class='content'>
|
||||
a@b c@d
|
||||
</div><table class='sections'><p></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static void <b>JAVADOC_ME</b>()</pre></div><div class='content'> The value of A is <a href="psi_element://A#A">23</a>. <p></div><table class='sections'><p></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static void <b>JAVADOC_ME</b>()</pre></div><div class='content'> The value of A is <a href="psi_element://A#A">23</a>. <p></div><table class='sections'><p></table>
|
||||
@@ -1 +1 @@
|
||||
<div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static void <b>JAVADOC_ME</b>()</pre></div><div class='content'> The value of A is <a href="psi_element://A#A">23</a>. <p></div><table class='sections'><p></table>
|
||||
<html><head><base href="placeholder"></head><body><div class='definition'><pre><a href="psi_element://A"><code>A</code></a><br>public static void <b>JAVADOC_ME</b>()</pre></div><div class='content'> The value of A is <a href="psi_element://A#A">23</a>. <p></div><table class='sections'><p></table>
|
||||
Reference in New Issue
Block a user