--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractExecutableMemberWriter.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractExecutableMemberWriter.java Tue Jun 04 16:33:37 2019 +0200
@@ -73,19 +73,6 @@
super(writer);
}
- /**
- * Add the type parameters for the executable member.
- *
- * @param member the member to write type parameters for.
- * @param htmltree the content tree to which the parameters will be added.
- */
- protected void addTypeParameters(ExecutableElement member, Content htmltree) {
- Content typeParameters = getTypeParameters(member);
- if (!typeParameters.isEmpty()) {
- htmltree.add(typeParameters);
- htmltree.add(Entity.NO_BREAK_SPACE);
- }
- }
/**
* Get the type parameters for the executable member.
@@ -134,7 +121,7 @@
writer.getDocLink(context, te, ee,
name(ee), false));
Content code = HtmlTree.CODE(memberLink);
- addParameters(ee, false, code, name(ee).length() - 1);
+ addParameters(ee, code);
tdSummary.add(code);
}
@@ -174,7 +161,7 @@
*
* @param member the member to write receiver annotations for.
* @param rcvrType the receiver type.
- * @param descList list of annotation description.
+ * @param annotationMirrors list of annotation descriptions.
* @param tree the content tree to which the information will be added.
*/
protected void addReceiverAnnotations(ExecutableElement member, TypeMirror rcvrType,
@@ -195,8 +182,16 @@
* @param member the member to write parameters for.
* @param htmltree the content tree to which the parameters information will be added.
*/
- protected void addParameters(ExecutableElement member, Content htmltree, int indentSize) {
- addParameters(member, true, htmltree, indentSize);
+ protected void addParameters(ExecutableElement member, Content htmltree) {
+ Content paramTree = getParameters(member, false);
+ if (paramTree.isEmpty()) {
+ htmltree.add("()");
+ } else {
+ htmltree.add(Entity.ZERO_WIDTH_SPACE);
+ htmltree.add("(");
+ htmltree.add(paramTree);
+ paramTree.add(")");
+ }
}
/**
@@ -204,19 +199,17 @@
*
* @param member the member to write parameters for.
* @param includeAnnotations true if annotation information needs to be added.
- * @param htmltree the content tree to which the parameters information will be added.
+ * @return the content tree containing the parameter information
*/
- protected void addParameters(ExecutableElement member,
- boolean includeAnnotations, Content htmltree, int indentSize) {
+ protected Content getParameters(ExecutableElement member, boolean includeAnnotations) {
Content paramTree = new ContentBuilder();
String sep = "";
List<? extends VariableElement> parameters = member.getParameters();
- CharSequence indent = makeSpace(indentSize + 1);
TypeMirror rcvrType = member.getReceiverType();
if (includeAnnotations && rcvrType != null && utils.isAnnotated(rcvrType)) {
List<? extends AnnotationMirror> annotationMirrors = rcvrType.getAnnotationMirrors();
addReceiverAnnotations(member, rcvrType, annotationMirrors, paramTree);
- sep = "," + DocletConstants.NL + indent;
+ sep = "," + DocletConstants.NL;
}
int paramstart;
for (paramstart = 0; paramstart < parameters.size(); paramstart++) {
@@ -226,11 +219,9 @@
if (param.getKind() != ElementKind.INSTANCE_INIT) {
if (includeAnnotations) {
boolean foundAnnotations =
- writer.addAnnotationInfo(indent.length(),
- member, param, paramTree);
+ writer.addAnnotationInfo(param, paramTree);
if (foundAnnotations) {
paramTree.add(DocletConstants.NL);
- paramTree.add(indent);
}
}
addParam(member, param,
@@ -242,54 +233,42 @@
for (int i = paramstart + 1; i < parameters.size(); i++) {
paramTree.add(",");
paramTree.add(DocletConstants.NL);
- paramTree.add(indent);
if (includeAnnotations) {
boolean foundAnnotations =
- writer.addAnnotationInfo(indent.length(), member, parameters.get(i),
+ writer.addAnnotationInfo(parameters.get(i),
paramTree);
if (foundAnnotations) {
paramTree.add(DocletConstants.NL);
- paramTree.add(indent);
}
}
addParam(member, parameters.get(i), (i == parameters.size() - 1) && member.isVarArgs(),
paramTree);
}
- if (paramTree.isEmpty()) {
- htmltree.add("()");
- } else {
- htmltree.add(Entity.ZERO_WIDTH_SPACE);
- htmltree.add("(");
- htmltree.add(paramTree);
- paramTree.add(")");
- }
+
+ return paramTree;
}
/**
- * Add exceptions for the executable member.
+ * Get a content tree containing the exception information for the executable member.
*
* @param member the member to write exceptions for.
- * @param htmltree the content tree to which the exceptions information will be added.
+ * @return the content tree containing the exceptions information.
*/
- protected void addExceptions(ExecutableElement member, Content htmltree, int indentSize) {
+ protected Content getExceptions(ExecutableElement member) {
List<? extends TypeMirror> exceptions = member.getThrownTypes();
+ Content htmltree = new ContentBuilder();
if (!exceptions.isEmpty()) {
- CharSequence indent = makeSpace(indentSize + 1 - 7);
- htmltree.add(DocletConstants.NL);
- htmltree.add(indent);
- htmltree.add("throws ");
- indent = makeSpace(indentSize + 1);
Content link = writer.getLink(new LinkInfoImpl(configuration, MEMBER, exceptions.get(0)));
htmltree.add(link);
for(int i = 1; i < exceptions.size(); i++) {
htmltree.add(",");
htmltree.add(DocletConstants.NL);
- htmltree.add(indent);
Content exceptionLink = writer.getLink(new LinkInfoImpl(configuration, MEMBER,
exceptions.get(i)));
htmltree.add(exceptionLink);
}
}
+ return htmltree;
}
protected TypeElement implementsMethodInIntfac(ExecutableElement method,
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java Tue Jun 04 16:33:37 2019 +0200
@@ -46,12 +46,14 @@
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
import jdk.javadoc.internal.doclets.formats.html.markup.Links;
+import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
import jdk.javadoc.internal.doclets.formats.html.markup.Table;
import jdk.javadoc.internal.doclets.formats.html.markup.TableHeader;
import jdk.javadoc.internal.doclets.toolkit.Content;
import jdk.javadoc.internal.doclets.toolkit.MemberSummaryWriter;
import jdk.javadoc.internal.doclets.toolkit.Resources;
import jdk.javadoc.internal.doclets.toolkit.taglets.DeprecatedTaglet;
+import jdk.javadoc.internal.doclets.toolkit.util.DocletConstants;
import jdk.javadoc.internal.doclets.toolkit.util.Utils;
import static javax.lang.model.element.Modifier.ABSTRACT;
@@ -219,55 +221,6 @@
*/
protected abstract Content getDeprecatedLink(Element member);
- /**
- * Add the member name to the content tree.
- *
- * @param name the member name to be added to the content tree.
- * @param htmltree the content tree to which the name will be added.
- */
- protected void addName(String name, Content htmltree) {
- htmltree.add(name);
- }
-
- /**
- * Add the modifier for the member. The modifiers are ordered as specified
- * by <em>The Java Language Specification</em>.
- *
- * @param member the member for which the modifier will be added.
- * @param htmltree the content tree to which the modifier information will be added.
- */
- protected void addModifiers(Element member, Content htmltree) {
- Set<Modifier> set = new TreeSet<>(member.getModifiers());
-
- // remove the ones we really don't need
- set.remove(NATIVE);
- set.remove(SYNCHRONIZED);
- set.remove(STRICTFP);
-
- // According to JLS, we should not be showing public modifier for
- // interface methods.
- if ((utils.isField(member) || utils.isMethod(member))
- && ((writer instanceof ClassWriterImpl
- && utils.isInterface(((ClassWriterImpl) writer).getTypeElement()) ||
- writer instanceof AnnotationTypeWriterImpl) )) {
- // Remove the implicit abstract and public modifiers
- if (utils.isMethod(member) &&
- (utils.isInterface(member.getEnclosingElement()) ||
- utils.isAnnotationType(member.getEnclosingElement()))) {
- set.remove(ABSTRACT);
- set.remove(PUBLIC);
- }
- if (!utils.isMethod(member)) {
- set.remove(PUBLIC);
- }
- }
- if (!set.isEmpty()) {
- String mods = set.stream().map(Modifier::toString).collect(Collectors.joining(" "));
- htmltree.add(mods);
- htmltree.add(Entity.NO_BREAK_SPACE);
- }
- }
-
protected CharSequence makeSpace(int len) {
if (len <= 0) {
return "";
@@ -563,4 +516,237 @@
else
return HtmlTree.LI(HtmlStyle.blockList, memberTree);
}
+
+ /**
+ * A content builder for member signatures.
+ */
+ class MemberSignature {
+
+ private Element element;
+ private Content typeParameters;
+ private Content returnType;
+ private Content parameters;
+ private Content exceptions;
+
+ // Threshold for length of type parameters before switching from inline to block representation.
+ private final static int TYPE_PARAMS_MAX_INLINE_LENGTH = 50;
+
+ // Threshold for combined length of modifiers, type params and return type before breaking
+ // it up with a line break before the return type.
+ private final static int RETURN_TYPE_MAX_LINE_LENGTH = 50;
+
+ /**
+ * Create a new member signature builder.
+ *
+ * @param element The element for which to create a signature.
+ */
+ MemberSignature(Element element) {
+ this.element = element;
+ }
+
+ /**
+ * Add the type parameters for an executable member.
+ *
+ * @param typeParameters the content tree containing the type parameters to add.
+ * @return this MemberSignature instance
+ */
+ MemberSignature addTypeParameters(Content typeParameters) {
+ this.typeParameters = typeParameters;
+ return this;
+ }
+
+ /**
+ * Add the return type for an executable member.
+ *
+ * @param returnType the content tree containing the return type to add.
+ * @return this MemberSignature instance
+ */
+ MemberSignature addReturnType(Content returnType) {
+ this.returnType = returnType;
+ return this;
+ }
+
+ /**
+ * Add the type information for a non-executable member.
+ *
+ * @param type the type of the member.
+ * @return this MemberSignature instance
+ */
+ MemberSignature addType(TypeMirror type) {
+ this.returnType = writer.getLink(new LinkInfoImpl(configuration, LinkInfoImpl.Kind.MEMBER, type));
+ return this;
+ }
+
+ /**
+ * Add the parameter information of an executable member.
+ *
+ * @param paramTree the content tree containing the parameter information.
+ * @return this MemberSignature instance
+ */
+ MemberSignature addParameters(Content paramTree) {
+ this.parameters = paramTree;
+ return this;
+ }
+
+ /**
+ * Add the exception information of an executable member.
+ *
+ * @param exceptionTree the content tree containing the exception information
+ * @return this MemberSignature instance
+ */
+ MemberSignature addExceptions(Content exceptionTree) {
+ this.exceptions = exceptionTree;
+ return this;
+ }
+
+ /**
+ * Return a HTML tree containing the member signature.
+ *
+ * @return a HTML tree containing the member signature
+ */
+ Content toContent() {
+ Content content = new ContentBuilder();
+ // Position of last line separator.
+ int lastLineSeparator = 0;
+
+ // Annotations
+ Content annotationInfo = writer.getAnnotationInfo(element.getAnnotationMirrors(), true);
+ if (!annotationInfo.isEmpty()) {
+ content.add(HtmlTree.SPAN(HtmlStyle.annotations, annotationInfo));
+ lastLineSeparator = content.charCount();
+ }
+
+ // Modifiers
+ appendModifiers(content);
+
+ // Type parameters
+ if (typeParameters != null && !typeParameters.isEmpty()) {
+ lastLineSeparator = appendTypeParameters(content, lastLineSeparator);
+ }
+
+ // Return type
+ if (returnType != null) {
+ content.add(HtmlTree.SPAN(HtmlStyle.returnType, returnType));
+ content.add(Entity.NO_BREAK_SPACE);
+ }
+
+ // Name
+ HtmlTree nameSpan = new HtmlTree(HtmlTag.SPAN);
+ nameSpan.setStyle(HtmlStyle.memberName);
+ if (configuration.linksource) {
+ Content name = new StringContent(name(element));
+ writer.addSrcLink(element, name, nameSpan);
+ } else {
+ nameSpan.add(name(element));
+ }
+ content.add(nameSpan);
+
+
+ // Parameters and exceptions
+ if (parameters != null) {
+ appendParametersAndExceptions(content, lastLineSeparator);
+ }
+
+ return HtmlTree.DIV(HtmlStyle.memberSignature, content);
+ }
+
+ /**
+ * Add the modifier for the member. The modifiers are ordered as specified
+ * by <em>The Java Language Specification</em>.
+ *
+ * @param htmltree the content tree to which the modifier information will be added.
+ */
+ private void appendModifiers(Content htmltree) {
+ Set<Modifier> set = new TreeSet<>(element.getModifiers());
+
+ // remove the ones we really don't need
+ set.remove(NATIVE);
+ set.remove(SYNCHRONIZED);
+ set.remove(STRICTFP);
+
+ // According to JLS, we should not be showing public modifier for
+ // interface methods.
+ if ((utils.isField(element) || utils.isMethod(element))
+ && ((writer instanceof ClassWriterImpl
+ && utils.isInterface(((ClassWriterImpl) writer).getTypeElement()) ||
+ writer instanceof AnnotationTypeWriterImpl) )) {
+ // Remove the implicit abstract and public modifiers
+ if (utils.isMethod(element) &&
+ (utils.isInterface(element.getEnclosingElement()) ||
+ utils.isAnnotationType(element.getEnclosingElement()))) {
+ set.remove(ABSTRACT);
+ set.remove(PUBLIC);
+ }
+ if (!utils.isMethod(element)) {
+ set.remove(PUBLIC);
+ }
+ }
+ if (!set.isEmpty()) {
+ String mods = set.stream().map(Modifier::toString).collect(Collectors.joining(" "));
+ htmltree.add(HtmlTree.SPAN(HtmlStyle.modifiers, new StringContent(mods)));
+ htmltree.add(Entity.NO_BREAK_SPACE);
+ }
+ }
+
+ /**
+ * Append the type parameter information to the HTML tree.
+ *
+ * @param htmltree the HTML tree
+ * @param lastLineSeparator index of last line separator in HTML tree
+ * @return the new index of the last line separator
+ */
+ private int appendTypeParameters(Content htmltree, int lastLineSeparator) {
+ // Apply different wrapping strategies for type parameters
+ // depending of combined length of type parameters and return type.
+ int typeParamLength = typeParameters.charCount();
+
+ if (typeParamLength >= TYPE_PARAMS_MAX_INLINE_LENGTH) {
+ htmltree.add(HtmlTree.SPAN(HtmlStyle.typeParametersLong, typeParameters));
+ } else {
+ htmltree.add(HtmlTree.SPAN(HtmlStyle.typeParameters, typeParameters));
+ }
+
+ int lineLength = htmltree.charCount() - lastLineSeparator;
+ int newLastLineSeparator = lastLineSeparator;
+
+ // sum below includes length of modifiers plus type params added above
+ if (lineLength + returnType.charCount()> RETURN_TYPE_MAX_LINE_LENGTH) {
+ htmltree.add(DocletConstants.NL);
+ newLastLineSeparator = htmltree.charCount();
+ } else {
+ htmltree.add(Entity.NO_BREAK_SPACE);
+ }
+
+ return newLastLineSeparator;
+ }
+
+ /**
+ * Append the parameters and exceptions information to the HTML tree.
+ *
+ * @param htmltree the HTML tree
+ * @param lastLineSeparator the index of the last line separator in HTML tree
+ */
+ private void appendParametersAndExceptions(Content htmltree, int lastLineSeparator) {
+ // Record current position for indentation of exceptions
+ int indentSize = htmltree.charCount() - lastLineSeparator;
+
+ if (parameters.isEmpty()) {
+ htmltree.add("()");
+ } else {
+ parameters.add(")");
+ htmltree.add(Entity.ZERO_WIDTH_SPACE);
+ htmltree.add("(");
+ htmltree.add(HtmlTree.SPAN(HtmlStyle.arguments, parameters));
+ }
+
+ // Exceptions
+ if (exceptions != null && !exceptions.isEmpty()) {
+ CharSequence indent = makeSpace(indentSize + 1 - 7);
+ htmltree.add(DocletConstants.NL);
+ htmltree.add(indent);
+ htmltree.add("throws ");
+ htmltree.add(HtmlTree.SPAN(HtmlStyle.exceptions, exceptions));
+ }
+ }
+ }
}
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeFieldWriterImpl.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeFieldWriterImpl.java Tue Jun 04 16:33:37 2019 +0200
@@ -33,7 +33,6 @@
import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
-import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
import jdk.javadoc.internal.doclets.formats.html.markup.Table;
@@ -132,21 +131,9 @@
* {@inheritDoc}
*/
public Content getSignature(Element member) {
- Content pre = new HtmlTree(HtmlTag.PRE);
- writer.addAnnotationInfo(member, pre);
- addModifiers(member, pre);
- Content link =
- writer.getLink(new LinkInfoImpl(configuration,
- LinkInfoImpl.Kind.MEMBER, getType(member)));
- pre.add(link);
- pre.add(Entity.NO_BREAK_SPACE);
- if (configuration.linksource) {
- Content memberName = new StringContent(name(member));
- writer.addSrcLink(member, memberName, pre);
- } else {
- addName(name(member), pre);
- }
- return pre;
+ return new MemberSignature(member)
+ .addType(getType(member))
+ .toContent();
}
/**
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java Tue Jun 04 16:33:37 2019 +0200
@@ -31,11 +31,8 @@
import javax.lang.model.type.TypeMirror;
import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
-import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
-import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
-import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
import jdk.javadoc.internal.doclets.formats.html.markup.Table;
import jdk.javadoc.internal.doclets.formats.html.markup.TableHeader;
import jdk.javadoc.internal.doclets.toolkit.AnnotationTypeRequiredMemberWriter;
@@ -136,21 +133,9 @@
* {@inheritDoc}
*/
public Content getSignature(Element member) {
- Content pre = new HtmlTree(HtmlTag.PRE);
- writer.addAnnotationInfo(member, pre);
- addModifiers(member, pre);
- Content link =
- writer.getLink(new LinkInfoImpl(configuration,
- LinkInfoImpl.Kind.MEMBER, getType(member)));
- pre.add(link);
- pre.add(Entity.NO_BREAK_SPACE);
- if (configuration.linksource) {
- Content memberName = new StringContent(name(member));
- writer.addSrcLink(member, memberName, pre);
- } else {
- addName(name(member), pre);
- }
- return pre;
+ return new MemberSignature(member)
+ .addType(getType(member))
+ .toContent();
}
/**
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstructorWriterImpl.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstructorWriterImpl.java Tue Jun 04 16:33:37 2019 +0200
@@ -37,7 +37,6 @@
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
-import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
import jdk.javadoc.internal.doclets.formats.html.markup.Table;
import jdk.javadoc.internal.doclets.formats.html.markup.TableHeader;
import jdk.javadoc.internal.doclets.toolkit.ConstructorWriter;
@@ -152,20 +151,10 @@
*/
@Override
public Content getSignature(ExecutableElement constructor) {
- Content pre = new HtmlTree(HtmlTag.PRE);
- writer.addAnnotationInfo(constructor, pre);
- int annotationLength = pre.charCount();
- addModifiers(constructor, pre);
- if (configuration.linksource) {
- Content constructorName = new StringContent(name(constructor));
- writer.addSrcLink(constructor, constructorName, pre);
- } else {
- addName(name(constructor), pre);
- }
- int indent = pre.charCount() - annotationLength;
- addParameters(constructor, pre, indent);
- addExceptions(constructor, pre, indent);
- return pre;
+ return new MemberSignature(constructor)
+ .addParameters(getParameters(constructor, true))
+ .addExceptions(getExceptions(constructor))
+ .toContent();
}
/**
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/EnumConstantWriterImpl.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/EnumConstantWriterImpl.java Tue Jun 04 16:33:37 2019 +0200
@@ -32,9 +32,7 @@
import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
-import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
-import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
import jdk.javadoc.internal.doclets.formats.html.markup.Table;
import jdk.javadoc.internal.doclets.formats.html.markup.TableHeader;
import jdk.javadoc.internal.doclets.toolkit.Content;
@@ -118,20 +116,9 @@
*/
@Override
public Content getSignature(VariableElement enumConstant) {
- Content pre = new HtmlTree(HtmlTag.PRE);
- writer.addAnnotationInfo(enumConstant, pre);
- addModifiers(enumConstant, pre);
- Content enumConstantLink = writer.getLink(new LinkInfoImpl(
- configuration, LinkInfoImpl.Kind.MEMBER, enumConstant.asType()));
- pre.add(enumConstantLink);
- pre.add(" ");
- if (configuration.linksource) {
- Content enumConstantName = new StringContent(name(enumConstant));
- writer.addSrcLink(enumConstant, enumConstantName, pre);
- } else {
- addName(name(enumConstant), pre);
- }
- return pre;
+ return new MemberSignature(enumConstant)
+ .addType(enumConstant.asType())
+ .toContent();
}
/**
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FieldWriterImpl.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FieldWriterImpl.java Tue Jun 04 16:33:37 2019 +0200
@@ -35,7 +35,6 @@
import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
-import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
import jdk.javadoc.internal.doclets.formats.html.markup.Table;
@@ -121,20 +120,9 @@
*/
@Override
public Content getSignature(VariableElement field) {
- Content pre = new HtmlTree(HtmlTag.PRE);
- writer.addAnnotationInfo(field, pre);
- addModifiers(field, pre);
- Content fieldlink = writer.getLink(new LinkInfoImpl(
- configuration, LinkInfoImpl.Kind.MEMBER, field.asType()));
- pre.add(fieldlink);
- pre.add(" ");
- if (configuration.linksource) {
- Content fieldName = new StringContent(name(field));
- writer.addSrcLink(field, fieldName, pre);
- } else {
- addName(name(field), pre);
- }
- return pre;
+ return new MemberSignature(field)
+ .addType(field.asType())
+ .toContent();
}
/**
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java Tue Jun 04 16:33:37 2019 +0200
@@ -1715,20 +1715,7 @@
* added
*/
public void addAnnotationInfo(PackageElement packageElement, Content htmltree) {
- addAnnotationInfo(packageElement, packageElement.getAnnotationMirrors(), htmltree);
- }
-
- /**
- * Add the annotation types of the executable receiver.
- *
- * @param method the executable to write the receiver annotations for.
- * @param descList a list of annotation mirrors.
- * @param htmltree the documentation tree to which the annotation info will be
- * added
- */
- public void addReceiverAnnotationInfo(ExecutableElement method, List<AnnotationMirror> descList,
- Content htmltree) {
- addAnnotationInfo(0, method, descList, false, htmltree);
+ addAnnotationInfo(packageElement.getAnnotationMirrors(), htmltree);
}
/*
@@ -1739,7 +1726,7 @@
List<? extends AnnotationMirror> annotationMirrors, Content htmltree) {
TypeMirror rcvrType = method.getReceiverType();
List<? extends AnnotationMirror> annotationMirrors1 = rcvrType.getAnnotationMirrors();
- addAnnotationInfo(0, method, annotationMirrors1, false, htmltree);
+ htmltree.add(getAnnotationInfo(annotationMirrors1, false));
}
/**
@@ -1749,97 +1736,65 @@
* @param htmltree the content tree to which the annotation types will be added
*/
public void addAnnotationInfo(Element element, Content htmltree) {
- addAnnotationInfo(element, element.getAnnotationMirrors(), htmltree);
+ addAnnotationInfo(element.getAnnotationMirrors(), htmltree);
}
/**
* Add the annotatation types for the given element and parameter.
*
- * @param indent the number of spaces to indent the parameters.
- * @param element the element to write annotations for.
* @param param the parameter to write annotations for.
* @param tree the content tree to which the annotation types will be added
*/
- public boolean addAnnotationInfo(int indent, Element element, VariableElement param,
- Content tree) {
- return addAnnotationInfo(indent, element, param.getAnnotationMirrors(), false, tree);
+ public boolean addAnnotationInfo(VariableElement param, Content tree) {
+ Content annotaionInfo = getAnnotationInfo(param.getAnnotationMirrors(), false);
+ if (annotaionInfo.isEmpty()) {
+ return false;
+ }
+ tree.add(annotaionInfo);
+ return true;
}
/**
* Adds the annotatation types for the given Element.
*
- * @param element the element to write annotations for.
- * @param descList a list of annotation mirrors.
- * @param htmltree the documentation tree to which the annotation info will be
- * added
- */
- private void addAnnotationInfo(Element element, List<? extends AnnotationMirror> descList,
- Content htmltree) {
- addAnnotationInfo(0, element, descList, true, htmltree);
- }
-
- /**
- * Adds the annotation types for the given element.
- *
- * @param indent the number of extra spaces to indent the annotations.
- * @param element the element to write annotations for.
* @param descList a list of annotation mirrors.
* @param htmltree the documentation tree to which the annotation info will be
* added
*/
- private boolean addAnnotationInfo(int indent, Element element,
- List<? extends AnnotationMirror> descList, boolean lineBreak, Content htmltree) {
- List<Content> annotations = getAnnotations(indent, descList, lineBreak);
+ private void addAnnotationInfo(List<? extends AnnotationMirror> descList, Content htmltree) {
+ htmltree.add(getAnnotationInfo(descList, true));
+ }
+
+ /**
+ * Return a content tree containing the annotation types for the given element.
+ *
+ * @param descList a list of annotation mirrors.
+ * @return the documentation tree containing the annotation info.
+ */
+ Content getAnnotationInfo(List<? extends AnnotationMirror> descList, boolean lineBreak) {
+ List<Content> annotations = getAnnotations(descList, lineBreak);
String sep = "";
- if (annotations.isEmpty()) {
- return false;
- }
+ ContentBuilder builder = new ContentBuilder();
for (Content annotation: annotations) {
- htmltree.add(sep);
- htmltree.add(annotation);
+ builder.add(sep);
+ builder.add(annotation);
if (!lineBreak) {
sep = " ";
}
}
- return true;
- }
-
- /**
- * Return the string representations of the annotation types for
- * the given doc.
- *
- * @param indent the number of extra spaces to indent the annotations.
- * @param descList a list of annotation mirrors.
- * @param linkBreak if true, add new line between each member value.
- * @return a list of strings representing the annotations being
- * documented.
- */
- private List<Content> getAnnotations(int indent, List<? extends AnnotationMirror> descList, boolean linkBreak) {
- return getAnnotations(indent, descList, linkBreak, true);
- }
-
- private List<Content> getAnnotations(int indent, AnnotationMirror amirror, boolean linkBreak) {
- List<AnnotationMirror> descList = new ArrayList<>();
- descList.add(amirror);
- return getAnnotations(indent, descList, linkBreak, true);
+ return builder;
}
/**
* Return the string representations of the annotation types for
* the given doc.
*
- * A {@code null} {@code elementType} indicates that all the
- * annotations should be returned without any filtering.
- *
- * @param indent the number of extra spaces to indent the annotations.
* @param descList a list of annotation mirrors.
* @param linkBreak if true, add new line between each member value.
- * @param isJava5DeclarationLocation
* @return a list of strings representing the annotations being
* documented.
*/
- public List<Content> getAnnotations(int indent, List<? extends AnnotationMirror> descList,
- boolean linkBreak, boolean isJava5DeclarationLocation) {
+ public List<Content> getAnnotations(List<? extends AnnotationMirror> descList, boolean linkBreak) {
List<Content> results = new ArrayList<>();
ContentBuilder annotation;
for (AnnotationMirror aDesc : descList) {
@@ -1853,11 +1808,6 @@
(!isAnnotationDocumented && !isContainerDocumented)) {
continue;
}
- /* TODO: check logic here to correctly handle declaration
- * and type annotations.
- if (utils.isDeclarationAnnotation(annotationElement, isJava5DeclarationLocation)) {
- continue;
- }*/
annotation = new ContentBuilder();
isAnnotationDocumented = false;
LinkInfoImpl linkInfo = new LinkInfoImpl(configuration,
@@ -1900,9 +1850,7 @@
new SimpleAnnotationValueVisitor9<Void, List<AnnotationValue>>() {
@Override
public Void visitArray(List<? extends AnnotationValue> vals, List<AnnotationValue> annotationTypeValues) {
- for (AnnotationValue av : vals) {
- annotationTypeValues.add(av);
- }
+ annotationTypeValues.addAll(vals);
return null;
}
}.visit(a, annotationTypeValues);
@@ -1917,13 +1865,11 @@
// If the container has 1 or more value defined and if the
// repeatable type annotation is not documented, print the container.
else {
- addAnnotations(annotationElement, linkInfo, annotation, pairs,
- indent, false);
+ addAnnotations(annotationElement, linkInfo, annotation, pairs, false);
}
}
else {
- addAnnotations(annotationElement, linkInfo, annotation, pairs,
- indent, linkBreak);
+ addAnnotations(annotationElement, linkInfo, annotation, pairs, linkBreak);
}
annotation.add(linkBreak ? DocletConstants.NL : "");
results.add(annotation);
@@ -1938,13 +1884,12 @@
* @param linkInfo the information about the link
* @param annotation the annotation string to which the annotation will be added
* @param map annotation type element to annotation value pairs
- * @param indent the number of extra spaces to indent the annotations.
* @param linkBreak if true, add new line between each member value
*/
private void addAnnotations(TypeElement annotationDoc, LinkInfoImpl linkInfo,
ContentBuilder annotation,
Map<? extends ExecutableElement, ? extends AnnotationValue> map,
- int indent, boolean linkBreak) {
+ boolean linkBreak) {
linkInfo.label = new StringContent("@");
linkInfo.label.add(annotationDoc.getSimpleName());
annotation.add(getLink(linkInfo));
@@ -1961,7 +1906,7 @@
if (linkBreak) {
annotation.add(DocletConstants.NL);
int spaces = annotationDoc.getSimpleName().length() + 2;
- for (int k = 0; k < (spaces + indent); k++) {
+ for (int k = 0; k < (spaces); k++) {
annotation.add(" ");
}
}
@@ -2074,7 +2019,7 @@
}
@Override
public Content visitAnnotation(AnnotationMirror a, Void p) {
- List<Content> list = getAnnotations(0, a, false);
+ List<Content> list = getAnnotations(List.of(a), false);
ContentBuilder buf = new ContentBuilder();
for (Content c : list) {
buf.add(c);
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/LinkFactoryImpl.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/LinkFactoryImpl.java Tue Jun 04 16:33:37 2019 +0200
@@ -41,6 +41,7 @@
import jdk.javadoc.internal.doclets.toolkit.Resources;
import jdk.javadoc.internal.doclets.toolkit.util.DocPath;
import jdk.javadoc.internal.doclets.toolkit.util.DocPaths;
+import jdk.javadoc.internal.doclets.toolkit.util.DocletConstants;
import jdk.javadoc.internal.doclets.toolkit.util.links.LinkFactory;
import jdk.javadoc.internal.doclets.toolkit.util.links.LinkInfo;
@@ -134,7 +135,7 @@
* {@inheritDoc}
*/
@Override
- protected Content getTypeParameterLinks(LinkInfo linkInfo, boolean isClassLabel){
+ protected Content getTypeParameterLinks(LinkInfo linkInfo, boolean isClassLabel) {
Content links = newContent();
List<TypeMirror> vars = new ArrayList<>();
TypeMirror ctype = linkInfo.type != null
@@ -164,6 +165,9 @@
if (many) {
links.add(",");
links.add(Entity.ZERO_WIDTH_SPACE);
+ if (((LinkInfoImpl) linkInfo).getContext() == LinkInfoImpl.Kind.MEMBER_TYPE_PARAMS) {
+ links.add(DocletConstants.NL);
+ }
}
links.add(getTypeParameterLink(linkInfo, t));
many = true;
@@ -186,7 +190,6 @@
typeLinkInfo.excludeTypeBounds = linkInfo.excludeTypeBounds;
typeLinkInfo.excludeTypeParameterLinks = linkInfo.excludeTypeParameterLinks;
typeLinkInfo.linkToSelf = linkInfo.linkToSelf;
- typeLinkInfo.isJava5DeclarationLocation = false;
return getLink(typeLinkInfo);
}
@@ -218,7 +221,7 @@
if (annotations.isEmpty())
return links;
- List<Content> annos = m_writer.getAnnotations(0, annotations, false, linkInfo.isJava5DeclarationLocation);
+ List<Content> annos = m_writer.getAnnotations(annotations, false);
boolean isFirst = true;
for (Content anno : annos) {
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/MethodWriterImpl.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/MethodWriterImpl.java Tue Jun 04 16:33:37 2019 +0200
@@ -36,7 +36,6 @@
import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
-import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
import jdk.javadoc.internal.doclets.formats.html.markup.Table;
@@ -140,23 +139,12 @@
*/
@Override
public Content getSignature(ExecutableElement method) {
- HtmlTree pre = new HtmlTree(HtmlTag.PRE);
- pre.setStyle(HtmlStyle.methodSignature);
- writer.addAnnotationInfo(method, pre);
- int annotationLength = pre.charCount();
- addModifiers(method, pre);
- addTypeParameters(method, pre);
- addReturnType(method, pre);
- if (configuration.linksource) {
- Content methodName = new StringContent(name(method));
- writer.addSrcLink(method, methodName, pre);
- } else {
- addName(name(method), pre);
- }
- int indent = pre.charCount() - annotationLength;
- addParameters(method, pre, indent);
- addExceptions(method, pre, indent);
- return pre;
+ return new MemberSignature(method)
+ .addTypeParameters(getTypeParameters(method))
+ .addReturnType(getReturnType(method))
+ .addParameters(getParameters(method, true))
+ .addExceptions(getExceptions(method))
+ .toContent();
}
/**
@@ -399,19 +387,17 @@
}
/**
- * Add the return type.
+ * Get the return type for the given method.
*
* @param method the method being documented.
- * @param htmltree the content tree to which the return type will be added
+ * @return content containing the return type
*/
- protected void addReturnType(ExecutableElement method, Content htmltree) {
+ protected Content getReturnType(ExecutableElement method) {
TypeMirror type = utils.getReturnType(method);
if (type != null) {
- Content linkContent = writer.getLink(
- new LinkInfoImpl(configuration, LinkInfoImpl.Kind.RETURN_TYPE, type));
- htmltree.add(linkContent);
- htmltree.add(Entity.NO_BREAK_SPACE);
+ return writer.getLink(new LinkInfoImpl(configuration, LinkInfoImpl.Kind.RETURN_TYPE, type));
}
+ return new ContentBuilder();
}
@Override
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PropertyWriterImpl.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PropertyWriterImpl.java Tue Jun 04 16:33:37 2019 +0200
@@ -32,7 +32,6 @@
import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
-import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
import jdk.javadoc.internal.doclets.formats.html.markup.Table;
@@ -114,21 +113,9 @@
*/
@Override
public Content getSignature(ExecutableElement property) {
- Content pre = new HtmlTree(HtmlTag.PRE);
- writer.addAnnotationInfo(property, pre);
- addModifiers(property, pre);
- Content propertylink = writer.getLink(new LinkInfoImpl(
- configuration, LinkInfoImpl.Kind.MEMBER,
- utils.getReturnType(property)));
- pre.add(propertylink);
- pre.add(" ");
- if (configuration.linksource) {
- Content propertyName = new StringContent(name(property));
- writer.addSrcLink(property, propertyName, pre);
- } else {
- addName(name(property), pre);
- }
- return pre;
+ return new MemberSignature(property)
+ .addType(utils.getReturnType(property))
+ .toContent();
}
/**
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlStyle.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlStyle.java Tue Jun 04 16:33:37 2019 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2010, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -41,6 +41,8 @@
allClassesContainer,
allPackagesContainer,
altColor,
+ annotations,
+ arguments,
bar,
block,
blockList,
@@ -70,6 +72,7 @@
detail,
docSummary,
emphasizedPhrase,
+ exceptions,
externalLink,
fieldDetails,
fieldSummary,
@@ -91,12 +94,15 @@
legalCopy,
mainContainer,
memberDetails,
+ memberName,
memberNameLabel,
memberNameLink,
+ memberSignature,
memberSummary,
methodDetails,
methodSignature,
methodSummary,
+ modifiers,
moduleDescription,
moduleLabelInPackage,
moduleLabelInType,
@@ -122,6 +128,7 @@
providesSummary,
requiresSummary,
returnLabel,
+ returnType,
rightContainer,
rightIframe,
rowColor,
@@ -147,6 +154,8 @@
topNav,
typeNameLabel,
typeNameLink,
+ typeParameters,
+ typeParametersLong,
typeSummary,
useSummary,
usesSummary
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/RawHtml.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/RawHtml.java Tue Jun 04 16:33:37 2019 +0200
@@ -112,6 +112,11 @@
state = State.ENTITY;
count++;
break;
+ case '\r':
+ case '\n':
+ // Windows uses "\r\n" as line separator while UNIX uses "\n".
+ // Ignore line separators to get consistent results across platforms.
+ break;
default:
count++;
}
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css Tue Jun 04 16:33:37 2019 +0200
@@ -1,4 +1,4 @@
-/*
+/*
* Javadoc style sheet
*/
@@ -165,7 +165,7 @@
height:2.8em;
padding-top:10px;
overflow:hidden;
- font-size:12px;
+ font-size:12px;
}
.bottomNav {
margin-top:10px;
@@ -533,9 +533,9 @@
th.colFirst a:link, th.colFirst a:visited,
th.colSecond a:link, th.colSecond a:visited,
th.colConstructorName a:link, th.colConstructorName a:visited,
-th.colDeprecatedItemName a:link, th.colDeprecatedItemName a:visited,
-.constantValuesContainer td a:link, .constantValuesContainer td a:visited,
-.allClassesContainer td a:link, .allClassesContainer td a:visited,
+th.colDeprecatedItemName a:link, th.colDeprecatedItemName a:visited,
+.constantValuesContainer td a:link, .constantValuesContainer td a:visited,
+.allClassesContainer td a:link, .allClassesContainer td a:visited,
.allPackagesContainer td a:link, .allPackagesContainer td a:visited {
font-weight:bold;
}
@@ -571,6 +571,26 @@
td.colLast a {
padding-bottom:3px;
}
+div.memberSignature {
+ font-family:'DejaVu Sans Mono', monospace;
+ font-size:14px;
+ margin-top:6px;
+ margin-bottom:14px;
+ white-space: pre-wrap;
+}
+div.memberSignature span.annotations {
+ white-space: pre-wrap;
+}
+div.memberSignature span.typeParametersLong,
+div.memberSignature span.arguments,
+div.memberSignature span.exceptions {
+ display: inline-block;
+ vertical-align: top;
+ white-space: pre;
+}
+div.memberSignature span.typeParameters {
+ white-space: normal;
+}
/*
* Styles for formatting effect.
*/
@@ -616,12 +636,12 @@
* Styles for IFRAME.
*/
.mainContainer {
- margin:0 auto;
- padding:0;
- height:100%;
- width:100%;
- position:fixed;
- top:0;
+ margin:0 auto;
+ padding:0;
+ height:100%;
+ width:100%;
+ position:fixed;
+ top:0;
left:0;
}
.leftContainer {
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/links/LinkInfo.java Tue Jun 04 16:20:42 2019 +0200
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/links/LinkInfo.java Tue Jun 04 16:33:37 2019 +0200
@@ -72,12 +72,6 @@
public boolean isTypeBound = false;
/**
- * Whether the document element is in a Java 5 declaration
- * location or not.
- */
- public boolean isJava5DeclarationLocation = true;
-
- /**
* The label for the link.
*/
public Content label;
@@ -161,7 +155,6 @@
", type=" + type +
", isVarArg=" + isVarArg +
", isTypeBound=" + isTypeBound +
- ", isJava5DeclarationLocation=" + isJava5DeclarationLocation +
", label=" + label +
", isStrong=" + isStrong +
", includeTypeInClassLinkLabel=" + includeTypeInClassLinkLabel +
--- a/test/langtools/jdk/javadoc/doclet/testAnnotationTypes/TestAnnotationTypes.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testAnnotationTypes/TestAnnotationTypes.java Tue Jun 04 16:33:37 2019 +0200
@@ -65,8 +65,9 @@
+ "<a id=\"DEFAULT_NAME\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre>static final java."
- + "lang.String DEFAULT_NAME</pre>");
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">static final</span> "
+ + "<span class=\"returnType\">java.lang.String</span> "
+ + "<span class=\"memberName\">DEFAULT_NAME</span></div>\n");
checkOutput("pkg/AnnotationType.html", true,
"<li>Summary: </li>\n"
@@ -90,7 +91,8 @@
"<a id=\"value()\">",
"<!-- -->",
"</a>",
- "<pre>int value</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\">int</span>"
+ + " <span class=\"memberName\">value</span></div>");
checkOutput("pkg/AnnotationType.html", false,
"<HR>\n\n"
--- a/test/langtools/jdk/javadoc/doclet/testDeprecatedDocs/TestDeprecatedDocs.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testDeprecatedDocs/TestDeprecatedDocs.java Tue Jun 04 16:33:37 2019 +0200
@@ -82,14 +82,16 @@
"<pre>@Deprecated\n"
+ "public class <span class=\"typeNameLabel\">DeprecatedClassByAnnotation</span>\n"
+ "extends java.lang.Object</pre>",
- "<pre>@Deprecated(forRemoval=true)\n"
- + "public int field</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"annotations\">@Deprecated(forRemoval=true)\n"
+ + "</span><span class=\"modifiers\">public</span> <span class=\"returnType\">int</span>"
+ + " <span class=\"memberName\">field</span></div>\n"
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated, for removal: This API element is subject to removal in a future version.</span></div>",
- "<pre>@Deprecated(forRemoval=true)\n"
- + "public DeprecatedClassByAnnotation()</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"annotations\">@Deprecated(forRemoval=true)\n"
+ + "</span><span class=\"modifiers\">public</span> <span class=\"memberName\">DeprecatedClassByAnnotation</span>()</div>\n"
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated, for removal: This API element is subject to removal in a future version.</span></div>",
- "<pre class=\"methodSignature\">@Deprecated\n"
- + "public void method()</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"annotations\">@Deprecated\n"
+ + "</span><span class=\"modifiers\">public</span> <span class=\"returnType\">"
+ + "void</span> <span class=\"memberName\">method</span>()</div>\n"
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated.</span></div>");
checkOutput("pkg/TestAnnotationType.html", true,
@@ -100,18 +102,19 @@
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated, for removal: This API element is subject to removal in a future version.</span>\n"
+ "<div class=\"deprecationComment\">annotation_test1 passes.</div>\n"
+ "</div>",
- "<pre>@Deprecated(forRemoval=true)\n"
- + "static final int field</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"annotations\">@Deprecated(forRemoval=true)\n" +
+ "</span><span class=\"modifiers\">static final</span> <span class=\"returnType\">int</span> <span class=\"memberName\">field</span></div>\n"
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated, for removal: This "
+ "API element is subject to removal in a future version.</span>\n"
+ "<div class=\"deprecationComment\">annotation_test4 passes.</div>\n"
+ "</div>",
- "<pre>@Deprecated(forRemoval=true)\n"
- + "int required</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"annotations\">@Deprecated(forRemoval=true)\n"
+ + "</span><span class=\"returnType\">int</span> <span class=\"memberName\">required</span></div>\n"
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated, for removal: This API element is subject to removal in a future version.</span>\n"
+ "<div class=\"deprecationComment\">annotation_test3 passes.</div>\n"
+ "</div>",
- "<pre>java.lang.String optional</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"returnType\">java.lang.String</span>"
+ + " <span class=\"memberName\">optional</span></div>\n"
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated.</span>\n"
+ "<div class=\"deprecationComment\">annotation_test2 passes.</div>\n"
+ "</div>");
@@ -124,8 +127,8 @@
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated, for removal: This API element is subject to removal in a future version.</span>\n"
+ "<div class=\"deprecationComment\">class_test1 passes.</div>\n"
+ "</div>",
- "<pre>@Deprecated(forRemoval=true)\n"
- + "public TestClass()</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"annotations\">@Deprecated(forRemoval=true)\n"
+ + "</span><span class=\"modifiers\">public</span> <span class=\"memberName\">TestClass</span>()</div>\n"
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated, for removal: This API element is subject to removal in a future version.</span>\n"
+ "<div class=\"deprecationComment\">class_test3 passes. This is the second sentence of deprecated description for a constructor.</div>\n"
+ "</div>",
@@ -164,8 +167,9 @@
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated, for removal: This API element is subject to removal in a future version.</span>\n"
+ "<div class=\"deprecationComment\">enum_test1 passes.</div>\n"
+ "</div>",
- "<pre>@Deprecated(forRemoval=true)\n"
- + "public static final <a href=\"TestEnum.html\" title=\"enum in pkg\">TestEnum</a> FOR_REMOVAL</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"annotations\">@Deprecated(forRemoval=true)\n"
+ + "</span><span class=\"modifiers\">public static final</span> <span class=\"returnType\">"
+ + "<a href=\"TestEnum.html\" title=\"enum in pkg\">TestEnum</a></span> <span class=\"memberName\">FOR_REMOVAL</span></div>\n"
+ "<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated, for removal: This API element is subject to removal in a future version.</span>\n"
+ "<div class=\"deprecationComment\">enum_test3 passes.</div>\n"
+ "</div>");
--- a/test/langtools/jdk/javadoc/doclet/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java Tue Jun 04 16:33:37 2019 +0200
@@ -373,21 +373,22 @@
// Test with -nocomment and -nodeprecated options. The ClassDocs whould
// not display definition lists for any member details.
checkOutput("pkg1/C1.html", expectFound,
- "<pre class=\"methodSignature\">public void readObject()\n" +
- " throws java.io.IOException</pre>\n" +
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> " +
+ "<span class=\"returnType\">void</span> <span class=\"memberName\">readObject</span>()\n" +
+ " throws <span class=\"exceptions\">java.io.IOException</span></div>\n" +
"</section>\n" +
"</li>");
checkOutput("pkg1/C2.html", expectFound,
- "<pre>public C2()</pre>\n" +
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span>" +
+ " <span class=\"memberName\">C2</span>()</div>\n" +
"</section>\n" +
"</li>");
checkOutput("pkg1/C1.ModalExclusionType.html", expectFound,
- "<pre>public " +
- "static final <a href=\"C1.ModalExclusionType.html\" " +
- "title=\"enum in pkg1\">C1.ModalExclusionType</a> " +
- "APPLICATION_EXCLUDE</pre>\n" +
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public static final</span> " +
+ "<span class=\"returnType\"><a href=\"C1.ModalExclusionType.html\" title=\"enum in pkg1\">" +
+ "C1.ModalExclusionType</a></span> <span class=\"memberName\">APPLICATION_EXCLUDE</span></div>\n" +
"</section>\n" +
"</li>");
--- a/test/langtools/jdk/javadoc/doclet/testIndentation/TestIndentation.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testIndentation/TestIndentation.java Tue Jun 04 16:33:37 2019 +0200
@@ -48,11 +48,12 @@
checkExit(Exit.OK);
checkOutput("p/Indent.html", true,
- "<pre class=\"methodSignature\">public <T> void m​(T t1,",
- "\n"
- + " T t2)",
- "\n"
- + " throws java.lang.Exception");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"typeParameters\"><T></span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">m</span>"
+ + "​(<span class=\"arguments\">T t1,\n"
+ + "T t2)</span>\n"
+ + " throws <span class=\"exceptions\">java.lang.Exception</span></div>");
// Test indentation of annotations and annotated method arguments
checkOutput("p/IndentAnnot.html", false,
--- a/test/langtools/jdk/javadoc/doclet/testInterface/TestInterface.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testInterface/TestInterface.java Tue Jun 04 16:33:37 2019 +0200
@@ -67,8 +67,10 @@
checkExit(Exit.OK);
checkOutput("pkg/Interface.html", true,
- "<pre class=\"methodSignature\">int method()</pre>",
- "<pre>static final int field</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\">int</span> "
+ + "<span class=\"memberName\">method</span>()</div>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">static final</span> "
+ + "<span class=\"returnType\">int</span> <span class=\"memberName\">field</span></div>",
// Make sure known implementing class list is correct and omits type parameters.
"<dl>\n"
+ "<dt>All Known Implementing Classes:</dt>\n"
@@ -126,7 +128,8 @@
+ "<a id=\"f\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre>public static int f</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public static</span> "
+ + "<span class=\"returnType\">int</span> <span class=\"memberName\">f</span></div>\n"
+ "<div class=\"block\">A hider field</div>",
"<td class=\"colFirst\"><code>static void</code></td>\n"
@@ -140,7 +143,8 @@
+ "<a id=\"staticMethod()\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre class=\"methodSignature\">public static void staticMethod()</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public static</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">staticMethod</span>()</div>\n"
+ "<div class=\"block\"><span class=\"descfrmTypeLabel\">"
+ "Description copied from interface: <code>"
+ "<a href=\"InterfaceWithStaticMembers.html#staticMethod()\">"
--- a/test/langtools/jdk/javadoc/doclet/testJavaFX/TestJavaFX.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testJavaFX/TestJavaFX.java Tue Jun 04 16:33:37 2019 +0200
@@ -57,11 +57,14 @@
"<dt><span class=\"seeLabel\">See Also:</span></dt>\n"
+ "<dd><a href=\"#getRate()\"><code>getRate()</code></a>, \n"
+ "<a href=\"#setRate(double)\"><code>setRate(double)</code></a></dd>",
- "<pre class=\"methodSignature\">public final void setRate​(double value)</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">setRate</span>​"
+ + "(<span class=\"arguments\">double value)</span></div>\n"
+ "<div class=\"block\">Sets the value of the property rate.</div>\n"
+ "<dl>\n"
+ "<dt><span class=\"simpleTagLabel\">Property description:</span></dt>",
- "<pre class=\"methodSignature\">public final double getRate()</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">double</span> <span class=\"memberName\">getRate</span>()</div>\n"
+ "<div class=\"block\">Gets the value of the property rate.</div>\n"
+ "<dl>\n"
+ "<dt><span class=\"simpleTagLabel\">Property description:</span></dt>",
@@ -90,20 +93,24 @@
+ "<a id=\"pausedProperty\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre>public final <a href=\"C.BooleanProperty.html\" "
- + "title=\"class in pkg1\">C.BooleanProperty</a> pausedProperty</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\"><a href=\"C.BooleanProperty.html\" title=\"class in pkg1\">"
+ + "C.BooleanProperty</a></span> <span class=\"memberName\">pausedProperty</span></div>\n"
+ "<div class=\"block\">Defines if paused. The second line.</div>",
"<h3>isPaused</h3>\n"
+ "<a id=\"isPaused()\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre class=\"methodSignature\">public final double isPaused()</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">double</span> <span class=\"memberName\">isPaused</span>()</div>\n"
+ "<div class=\"block\">Gets the value of the property paused.</div>",
"<h3>setPaused</h3>\n"
+ "<a id=\"setPaused(boolean)\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre class=\"methodSignature\">public final void setPaused​(boolean value)</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">setPaused</span>​"
+ + "(<span class=\"arguments\">boolean value)</span></div>\n"
+ "<div class=\"block\">Sets the value of the property paused.</div>\n"
+ "<dl>\n"
+ "<dt><span class=\"simpleTagLabel\">Property description:</span></dt>\n"
@@ -114,7 +121,8 @@
+ "<a id=\"isPaused()\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre class=\"methodSignature\">public final double isPaused()</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">double</span> <span class=\"memberName\">isPaused</span>()</div>\n"
+ "<div class=\"block\">Gets the value of the property paused.</div>\n"
+ "<dl>\n"
+ "<dt><span class=\"simpleTagLabel\">Property description:</span></dt>\n"
@@ -125,8 +133,9 @@
+ "<a id=\"rateProperty\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre>public final <a href=\"C.DoubleProperty.html\" "
- + "title=\"class in pkg1\">C.DoubleProperty</a> rateProperty</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\"><a href=\"C.DoubleProperty.html\" title=\"class in pkg1\">"
+ + "C.DoubleProperty</a></span> <span class=\"memberName\">rateProperty</span></div>\n"
+ "<div class=\"block\">Defines the direction/speed at which the "
+ "<code>Timeline</code> is expected to\n"
+ " be played. This is the second line.</div>",
@@ -134,7 +143,9 @@
+ "<a id=\"setRate(double)\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre class=\"methodSignature\">public final void setRate​(double value)</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">setRate</span>​"
+ + "(<span class=\"arguments\">double value)</span></div>\n"
+ "<div class=\"block\">Sets the value of the property rate.</div>\n"
+ "<dl>\n"
+ "<dt><span class=\"simpleTagLabel\">Property description:</span></dt>\n"
@@ -148,7 +159,8 @@
+ "<a id=\"getRate()\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre class=\"methodSignature\">public final double getRate()</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">double</span> <span class=\"memberName\">getRate</span>()</div>\n"
+ "<div class=\"block\">Gets the value of the property rate.</div>\n"
+ "<dl>\n"
+ "<dt><span class=\"simpleTagLabel\">Property description:</span></dt>\n"
@@ -224,7 +236,9 @@
+ "<a id=\"betaProperty\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre>public java.lang.Object betaProperty</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">java.lang.Object</span>"
+ + " <span class=\"memberName\">betaProperty</span></div>\n"
+ "</section>\n"
+ "</li>\n"
+ "<li class=\"blockList\">\n"
@@ -233,7 +247,9 @@
+ "<a id=\"gammaProperty\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre>public final java.util.List<java.lang.String> gammaProperty</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">java.util.List<java.lang.String></span>"
+ + " <span class=\"memberName\">gammaProperty</span></div>\n"
+ "</section>\n"
+ "</li>\n"
+ "<li class=\"blockListLast\">\n"
@@ -242,8 +258,9 @@
+ "<a id=\"deltaProperty\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre>public final java.util.List<"
- + "java.util.Set<? super java.lang.Object>> deltaProperty</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">java.util.List<java.util.Set<? super java.lang.Object>>"
+ + "</span> <span class=\"memberName\">deltaProperty</span></div>\n"
+ "</section>\n"
+ "</li>\n"
+ "</ul>\n"
--- a/test/langtools/jdk/javadoc/doclet/testLambdaFeature/TestLambdaFeature.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testLambdaFeature/TestLambdaFeature.java Tue Jun 04 16:33:37 2019 +0200
@@ -57,7 +57,8 @@
checkOutput("pkg/A.html", true,
"<td class=\"colFirst\"><code>default void</code></td>",
- "<pre class=\"methodSignature\">default void defaultMethod()</pre>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">default</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">defaultMethod</span>()</div>\n",
"<div role=\"tablist\" aria-orientation=\"horizontal\"><button role=\"tab\""
+ " aria-selected=\"true\" aria-controls=\"memberSummary_tabpanel\" tabindex=\"0\""
+ " onkeydown=\"switchTab(event)\" id=\"t0\" class=\"activeTableTab\">All Methods"
--- a/test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOption.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOption.java Tue Jun 04 16:33:37 2019 +0200
@@ -74,13 +74,13 @@
checkOutput("pkg/C.html", true,
"<a href=\"" + url + "java/lang/String.html?is-external=true\" "
+ "title=\"class or interface in java.lang\" class=\"externalLink\"><code>Link to String Class</code></a>",
- //Make sure the parameters are indented properly when the -link option is used.
+ //Make sure the parameters are formatted properly when the -link option is used.
"(int p1,\n"
- + " int p2,\n"
- + " int p3)",
+ + "int p2,\n"
+ + "int p3)",
"(int p1,\n"
- + " int p2,\n"
- + " <a href=\"" + url + "java/lang/Object.html?is-external=true\" title=\"class or interface in java.lang\" class=\"externalLink\">"
+ + "int p2,\n"
+ + "<a href=\"" + url + "java/lang/Object.html?is-external=true\" title=\"class or interface in java.lang\" class=\"externalLink\">"
+ "Object</a> p3)");
checkOutput("pkg/B.html", true,
--- a/test/langtools/jdk/javadoc/doclet/testLiteralCodeInPre/TestLiteralCodeInPre.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testLiteralCodeInPre/TestLiteralCodeInPre.java Tue Jun 04 16:33:37 2019 +0200
@@ -49,19 +49,19 @@
checkExit(Exit.OK);
checkOutput("pkg/Test.html", true,
- "no_pre()</pre>\n"
+ "no_pre</span>()</div>\n"
+ "<div class=\"block\">abc<code>def</code>ghi</div>",
- "no_pre_extra_whitespace()</pre>\n"
+ "no_pre_extra_whitespace</span>()</div>\n"
+ "<div class=\"block\">abc<code> def </code>ghi</div>",
- "in_pre()</pre>\n"
+ "in_pre</span>()</div>\n"
+ "<div class=\"block\"><pre> abc<code> def </code>ghi</pre></div>",
- "pre_after_text()</pre>\n"
+ "pre_after_text</span>()</div>\n"
+ "<div class=\"block\">xyz <pre> abc<code> def </code>ghi</pre></div>",
- "after_pre()</pre>\n"
+ "after_pre</span>()</div>\n"
+ "<div class=\"block\">xyz <pre> pqr </pre> abc<code> def </code>ghi</div>",
- "back_in_pre()</pre>\n"
+ "back_in_pre</span>()</div>\n"
+ "<div class=\"block\">xyz <pre> pqr </pre> mno <pre> abc<code> def </code>ghi</pre></div>",
- "typical_usage_code()</pre>\n"
+ "typical_usage_code</span>()</div>\n"
+ "<div class=\"block\">Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n"
+ " Example: <pre><code>\n"
+ " line 0 @Override\n"
@@ -70,7 +70,7 @@
+ " line 3 }\n"
+ " </code></pre>\n"
+ " and so it goes.</div>",
- "typical_usage_literal()</pre>\n"
+ "typical_usage_literal</span>()</div>\n"
+ "<div class=\"block\">Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n"
+ " Example: <pre>\n"
+ " line 0 @Override\n"
@@ -79,7 +79,7 @@
+ " line 3 }\n"
+ " </pre>\n"
+ " and so it goes.</div>",
- "recommended_usage_literal()</pre>\n"
+ "recommended_usage_literal</span>()</div>\n"
+ "<div class=\"block\">Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n"
+ " Example: <pre>\n"
+ " line 0 @Override\n"
@@ -91,7 +91,8 @@
+ " <PRE>\n"
+ " <b>id </b>\n"
+ " </PRE></div>",
- "<pre class=\"methodSignature\">public void htmlAttrInPre1()</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">htmlAttrInPre1</span>()</div>\n"
+ "<div class=\"block\">More html tag outliers.\n"
+ " <pre>\n"
+ " @Override\n"
--- a/test/langtools/jdk/javadoc/doclet/testMemberInheritance/TestMemberInheritance.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testMemberInheritance/TestMemberInheritance.java Tue Jun 04 16:33:37 2019 +0200
@@ -96,7 +96,7 @@
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"#between(java.time.LocalDate,java.time.LocalDate)\">"
+ "between</a></span>​(java.time.LocalDate startDateInclusive,\n"
- + " java.time.LocalDate endDateExclusive)</code></th>");
+ + "java.time.LocalDate endDateExclusive)</code></th>");
checkOutput("pkg1/Implementer.html", false,
"<h3>Methods inherited from interface pkg1.<a href=\"Interface.html\""
--- a/test/langtools/jdk/javadoc/doclet/testMemberSummary/TestMemberSummary.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testMemberSummary/TestMemberSummary.java Tue Jun 04 16:33:37 2019 +0200
@@ -57,8 +57,9 @@
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href=\"#returnTypeTest()\">"
+ "returnTypeTest</a></span>()</code>",
// Check return type in member detail.
- "<pre class=\"methodSignature\">public <a href=\"PublicChild.html\" title=\"class in pkg\">"
- + "PublicChild</a> returnTypeTest()</pre>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\"><a href=\"PublicChild.html\" title=\"class in pkg\">"
+ + "PublicChild</a></span> <span class=\"memberName\">returnTypeTest</span>()</div>",
"<th class=\"colConstructorName\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"#%3Cinit%3E()\">PublicChild</a></span>()</code></th>");
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/langtools/jdk/javadoc/doclet/testMethodSignature/TestMethodSignature.java Tue Jun 04 16:33:37 2019 +0200
@@ -0,0 +1,142 @@
+/*
+ * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8214126
+ * @summary Method signatures not formatted correctly in browser
+ * @library ../../lib/
+ * @modules jdk.javadoc/jdk.javadoc.internal.tool
+ * @build javadoc.tester.*
+ * @run main TestMethodSignature
+ */
+
+import javadoc.tester.JavadocTester;
+
+public class TestMethodSignature extends JavadocTester {
+
+ public static void main(String... args) throws Exception {
+ TestMethodSignature tester = new TestMethodSignature();
+ tester.runTests();
+ }
+
+ @Test
+ public void test() {
+ javadoc("-d", "out",
+ "-sourcepath", testSrc,
+ "pkg");
+ checkExit(Exit.OK);
+
+ checkOutput("pkg/C.html", true,
+ "<div class=\"memberSignature\"><span class=\"annotations\">"
+ + "@Generated(\"GeneratedConstructor\")\n"
+ + "</span><span class=\"modifiers\">public</span> "
+ + "<span class=\"memberName\">C</span>()</div>",
+
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public static</span>"
+ + " <span class=\"returnType\">void</span> <span class=\"memberName\">"
+ + "simpleMethod</span>​(<span class=\"arguments\">int i,\n"
+ + "java.lang.String s,\nboolean b)</span></div>",
+
+ "<div class=\"memberSignature\"><span class=\"annotations\">@Generated"
+ + "(value=\"SomeGeneratedName\",\n date=\"a date\",\n"
+ + " comments=\"some comment about the method below\")\n"
+ + "</span><span class=\"modifiers\">public static</span> <span "
+ + "class=\"returnType\">void</span> <span class=\"memberName\">annotatedMethod"
+ + "</span>​(<span class=\"arguments\">int i,\n"
+ + "java.lang.String s,\nboolean b)</span></div>",
+
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public static</span>"
+ + " <span class=\"typeParametersLong\"><T1 extends java.lang.AutoCloseable,​\n"
+ + "T2 extends java.lang.AutoCloseable,​\n"
+ + "T3 extends java.lang.AutoCloseable,​\n"
+ + "T4 extends java.lang.AutoCloseable,​\n"
+ + "T5 extends java.lang.AutoCloseable,​\n"
+ + "T6 extends java.lang.AutoCloseable,​\n"
+ + "T7 extends java.lang.AutoCloseable,​\n"
+ + "T8 extends java.lang.AutoCloseable></span>\n"
+ + "<span class=\"returnType\"><a href=\"C.With8Types.html\" "
+ + "title=\"class in pkg\">C.With8Types</a><T1,​T2,​T3,"
+ + "​T4,​T5,​T6,​T7,​T8></span> "
+ + "<span class=\"memberName\">bigGenericMethod</span>​("
+ + "<span class=\"arguments\"><a href=\"C.F0.html\" "
+ + "title=\"interface in pkg\">C.F0</a><? extends T1> t1,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T2> t2,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T3> t3,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T4> t4,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T5> t5,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T6> t6,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T7> t7,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T8> t8)</span>\n"
+ + " "
+ + "throws <span class=\"exceptions\">java.lang.IllegalArgumentException,\n"
+ + "java.lang.IllegalStateException</span></div>",
+
+ "<div class=\"memberSignature\"><span class=\"annotations\">"
+ + "@Generated(value=\"SomeGeneratedName\",\n"
+ + " date=\"a date\",\n"
+ + " comments=\"some comment about the method below\")\n"
+ + "</span><span class=\"modifiers\">public static</span> "
+ + "<span class=\"typeParametersLong\">"
+ + "<T1 extends java.lang.AutoCloseable,​\n"
+ + "T2 extends java.lang.AutoCloseable,​\n"
+ + "T3 extends java.lang.AutoCloseable,​\n"
+ + "T4 extends java.lang.AutoCloseable,​\n"
+ + "T5 extends java.lang.AutoCloseable,​\n"
+ + "T6 extends java.lang.AutoCloseable,​\n"
+ + "T7 extends java.lang.AutoCloseable,​\n"
+ + "T8 extends java.lang.AutoCloseable></span>\n"
+ + "<span class=\"returnType\"><a href=\"C.With8Types.html\" "
+ + "title=\"class in pkg\">C.With8Types</a><T1,​T2,​T3,"
+ + "​T4,​T5,​T6,​T7,​T8></span> "
+ + "<span class=\"memberName\">bigGenericAnnotatedMethod</span>​("
+ + "<span class=\"arguments\"><a href=\"C.F0.html\" "
+ + "title=\"interface in pkg\">C.F0</a><? extends T1> t1,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T2> t2,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T3> t3,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T4> t4,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T5> t5,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T6> t6,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T7> t7,\n"
+ + "<a href=\"C.F0.html\" title=\"interface in pkg\">"
+ + "C.F0</a><? extends T8> t8)</span>\n"
+ + " "
+ + "throws <span class=\"exceptions\">java.lang.IllegalArgumentException,\n"
+ + "java.lang.IllegalStateException</span></div>\n"
+ + "<div class=\"block\">Generic method with eight type args and annotation.</div>");
+
+ }
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/langtools/jdk/javadoc/doclet/testMethodSignature/pkg/C.java Tue Jun 04 16:33:37 2019 +0200
@@ -0,0 +1,159 @@
+/*
+ * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package pkg;
+
+import javax.annotation.processing.Generated;
+
+/**
+ * Test class for rendering of method signatures. This provides some pathologically
+ * complex method signatures that require special handling. Other features are
+ * covered by other tests.
+ */
+public class C {
+
+ /**
+ * Annotated constructor.
+ */
+ @Generated(value = "GeneratedConstructor")
+ public C() {}
+
+
+ public interface F0<T> {
+ T apply() throws Exception;
+ }
+
+ public static class With8Types<T1, T2, T3, T4, T5, T6, T7, T8> { }
+
+
+ /**
+ * Simple method.
+ *
+ * @param i param 1
+ * @param s param 2
+ * @param b param 3
+ */
+ public static void simpleMethod(int i, String s, boolean b) {}
+
+
+ /**
+ * Annotated method.
+ *
+ * @param i param 1
+ * @param s param 2
+ * @param b param 3
+ */
+ @Generated(
+ value = "SomeGeneratedName",
+ date = "a date",
+ comments = "some comment about the method below")
+ public static void annotatedMethod(int i, String s, boolean b) {}
+
+
+ /**
+ * Generic method with eight type args.
+ *
+ * @param <T1> type 1
+ * @param <T2> type 2
+ * @param <T3> type 3
+ * @param <T4> type 4
+ * @param <T5> type 5
+ * @param <T6> type 6
+ * @param <T7> type 7
+ * @param <T8> type 8
+ * @param t1 param 1
+ * @param t2 param 2
+ * @param t3 param 3
+ * @param t4 param 4
+ * @param t5 param 5
+ * @param t6 param 6
+ * @param t7 param 7
+ * @param t8 param 8
+ * @return null
+ */
+ public static
+ <T1 extends AutoCloseable,
+ T2 extends AutoCloseable,
+ T3 extends AutoCloseable,
+ T4 extends AutoCloseable,
+ T5 extends AutoCloseable,
+ T6 extends AutoCloseable,
+ T7 extends AutoCloseable,
+ T8 extends AutoCloseable>
+ With8Types<T1, T2, T3, T4, T5, T6, T7, T8> bigGenericMethod(
+ F0<? extends T1> t1,
+ F0<? extends T2> t2,
+ F0<? extends T3> t3,
+ F0<? extends T4> t4,
+ F0<? extends T5> t5,
+ F0<? extends T6> t6,
+ F0<? extends T7> t7,
+ F0<? extends T8> t8)
+ throws IllegalArgumentException, IllegalStateException { return null; }
+
+
+ /**
+ * Generic method with eight type args and annotation.
+ *
+ * @param <T1> type 1
+ * @param <T2> type 2
+ * @param <T3> type 3
+ * @param <T4> type 4
+ * @param <T5> type 5
+ * @param <T6> type 6
+ * @param <T7> type 7
+ * @param <T8> type 8
+ * @param t1 param 1
+ * @param t2 param 2
+ * @param t3 param 3
+ * @param t4 param 4
+ * @param t5 param 5
+ * @param t6 param 6
+ * @param t7 param 7
+ * @param t8 param 8
+ * @return null
+ */
+ @Generated(
+ value = "SomeGeneratedName",
+ date = "a date",
+ comments = "some comment about the method below")
+ public static
+ <T1 extends AutoCloseable,
+ T2 extends AutoCloseable,
+ T3 extends AutoCloseable,
+ T4 extends AutoCloseable,
+ T5 extends AutoCloseable,
+ T6 extends AutoCloseable,
+ T7 extends AutoCloseable,
+ T8 extends AutoCloseable>
+ With8Types<T1, T2, T3, T4, T5, T6, T7, T8> bigGenericAnnotatedMethod(
+ F0<? extends T1> t1,
+ F0<? extends T2> t2,
+ F0<? extends T3> t3,
+ F0<? extends T4> t4,
+ F0<? extends T5> t5,
+ F0<? extends T6> t6,
+ F0<? extends T7> t7,
+ F0<? extends T8> t8)
+ throws IllegalArgumentException, IllegalStateException { return null; }
+}
--- a/test/langtools/jdk/javadoc/doclet/testNewLanguageFeatures/TestNewLanguageFeatures.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testNewLanguageFeatures/TestNewLanguageFeatures.java Tue Jun 04 16:33:37 2019 +0200
@@ -81,8 +81,10 @@
"Returns the enum constant of this type with the specified name",
"Overloaded valueOf() method has correct documentation.",
"Overloaded values method has correct documentation.",
- "<pre class=\"methodSignature\">public static <a href=\"Coin.html\" title=\"enum in pkg\">Coin</a>" +
- " valueOf​(java.lang.String name)</pre>\n" +
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public static</span> "
+ + "<span class=\"returnType\"><a href=\"Coin.html\" title=\"enum in pkg\">Coin</a></span> "
+ + "<span class=\"memberName\">valueOf</span>​("
+ + "<span class=\"arguments\">java.lang.String name)</span></div>\n" +
"<div class=\"block\">Returns the enum constant of this type with the specified name.\n" +
"The string must match <i>exactly</i> an identifier used to declare an\n" +
"enum constant in this type. (Extraneous whitespace characters are \n" +
@@ -131,8 +133,11 @@
+ "<dd><code>V</code> - This is the second type "
+ "parameter.",
// Signature of method with type parameters
- "public <T extends java.util.List,​V> "
- + "java.lang.String[] methodThatHasTypeParameters",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"typeParameters\"><T extends java.util.List,​\nV></span>\n"
+ + "<span class=\"returnType\">java.lang.String[]</span> <span class=\"memberName\">"
+ + "methodThatHasTypeParameters</span>​(<span class=\"arguments\">T param1,\n"
+ + "V param2)</span></div>",
// Method that returns TypeParameters
"<td class=\"colFirst\"><code><a href=\"TypeParameters.html\" "
+ "title=\"type parameter in TypeParameters\">E</a>[]</code></td>\n"
@@ -140,10 +145,11 @@
+ "<a href=\"#methodThatReturnsTypeParameterA(E%5B%5D)\">"
+ "methodThatReturnsTypeParameterA</a></span>​(<a href=\"TypeParameters.html\" "
+ "title=\"type parameter in TypeParameters\">E</a>[] e)</code>",
- "<pre class=\"methodSignature\">public <a href=\"TypeParameters.html\" "
- + "title=\"type parameter in TypeParameters\">E</a>[] "
- + "methodThatReturnsTypeParameterA​(<a href=\"TypeParameters.html\" "
- + "title=\"type parameter in TypeParameters\">E</a>[] e)</pre>\n",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> <span "
+ + "class=\"returnType\"><a href=\"TypeParameters.html\" title=\"type parameter in TypeParameters\">"
+ + "E</a>[]</span> <span class=\"memberName\">methodThatReturnsTypeParameterA</span>​("
+ + "<span class=\"arguments\"><a href=\"TypeParameters.html\" title=\"type parameter in TypeParameters\">"
+ + "E</a>[] e)</span></div>\n",
"<td class=\"colFirst\"><code><T extends java.lang.Object & java.lang.Comparable<? super T>>"
+ "<br>T</code></td>\n"
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
@@ -210,7 +216,10 @@
// Handle multiple bounds.
//==============================================================
checkOutput("pkg/MultiTypeParameters.html", true,
- "public <T extends java.lang.Number & java.lang.Runnable> T foo​(T t)");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"typeParameters\"><T extends java.lang.Number & java.lang.Runnable></span>\n"
+ + "<span class=\"returnType\">T</span> <span class=\"memberName\">foo</span>​"
+ + "(<span class=\"arguments\">T t)</span></div>");
//==============================================================
// Test Class-Use Documentation for Type Parameters.
@@ -531,45 +540,42 @@
+ "AnnotationTypeUsage</span>\n"
+ "extends java.lang.Object</pre>",
// FIELD
- "<pre><a href=\"AnnotationType.html\" "
- + "title=\"annotation in pkg\">@AnnotationType</a>("
- + "<a href=\"AnnotationType.html#optional()\">optional</a>"
- + "=\"Field Annotation\",\n"
- + " <a href=\"AnnotationType.html#required()\">"
- + "required</a>=1994)\n"
- + "public int field</pre>",
+ "<div class=\"memberSignature\"><span class=\"annotations\"><a href=\"AnnotationType.html\" "
+ + "title=\"annotation in pkg\">@AnnotationType</a>(<a href=\"AnnotationType.html#optional()\">"
+ + "optional</a>=\"Field Annotation\",\n"
+ + " <a href=\"AnnotationType.html#required()\">required</a>=1994)\n"
+ + "</span><span class=\"modifiers\">public</span> <span class=\"returnType\">int</span>"
+ + " <span class=\"memberName\">field</span></div>",
// CONSTRUCTOR
- "<pre><a href=\"AnnotationType.html\" "
- + "title=\"annotation in pkg\">@AnnotationType</a>("
- + "<a href=\"AnnotationType.html#optional()\">optional</a>"
- + "=\"Constructor Annotation\",\n"
- + " <a href=\"AnnotationType.html#required()\">"
- + "required</a>=1994)\n"
- + "public AnnotationTypeUsage()</pre>",
+ "<div class=\"memberSignature\"><span class=\"annotations\"><a href=\"AnnotationType.html\" "
+ + "title=\"annotation in pkg\">@AnnotationType</a>(<a href=\"AnnotationType.html#optional()\">"
+ + "optional</a>=\"Constructor Annotation\",\n"
+ + " <a href=\"AnnotationType.html#required()\">required</a>=1994)\n"
+ + "</span><span class=\"modifiers\">public</span> "
+ + "<span class=\"memberName\">AnnotationTypeUsage</span>()</div>",
// METHOD
- "<pre class=\"methodSignature\"><a href=\"AnnotationType.html\" "
- + "title=\"annotation in pkg\">@AnnotationType</a>("
- + "<a href=\"AnnotationType.html#optional()\">optional</a>"
- + "=\"Method Annotation\",\n"
- + " <a href=\"AnnotationType.html#required()\">"
- + "required</a>=1994)\n"
- + "public void method()</pre>",
+ "<div class=\"memberSignature\"><span class=\"annotations\"><a href=\"AnnotationType.html\" "
+ + "title=\"annotation in pkg\">@AnnotationType</a>(<a href=\"AnnotationType.html#optional()\">"
+ + "optional</a>=\"Method Annotation\",\n"
+ + " <a href=\"AnnotationType.html#required()\">required</a>=1994)\n"
+ + "</span><span class=\"modifiers\">public</span> <span class=\"returnType\">"
+ + "void</span> <span class=\"memberName\">method</span>()</div>",
// METHOD PARAMS
- "<pre class=\"methodSignature\">public void methodWithParams​("
- + "<a href=\"AnnotationType.html\" title=\"annotation in pkg\">"
- + "@AnnotationType</a>(<a href=\"AnnotationType.html#optional()\">"
- + "optional</a>=\"Parameter Annotation\",<a "
- + "href=\"AnnotationType.html#required()\">required</a>=1994)\n"
- + " int documented,\n"
- + " int undocmented)</pre>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> <span "
+ + "class=\"returnType\">void</span> <span class=\"memberName\">methodWithParams</span>"
+ + "​(<span class=\"arguments\"><a href=\"AnnotationType.html\" title=\"annotation in pkg\">"
+ + "@AnnotationType</a>(<a href=\"AnnotationType.html#optional()\">optional</a>"
+ + "=\"Parameter Annotation\",<a href=\"AnnotationType.html#required()\">required</a>=1994)\n"
+ + "int documented,\n"
+ + "int undocmented)</span></div>",
// CONSTRUCTOR PARAMS
- "<pre>public AnnotationTypeUsage​(<a "
- + "href=\"AnnotationType.html\" title=\"annotation in pkg\">"
- + "@AnnotationType</a>(<a href=\"AnnotationType.html#optional()\">"
- + "optional</a>=\"Constructor Param Annotation\",<a "
- + "href=\"AnnotationType.html#required()\">required</a>=1994)\n"
- + " int documented,\n"
- + " int undocmented)</pre>");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"memberName\">AnnotationTypeUsage</span>​(<span class=\"arguments\">"
+ + "<a href=\"AnnotationType.html\" title=\"annotation in pkg\">@AnnotationType</a>("
+ + "<a href=\"AnnotationType.html#optional()\">optional</a>=\"Constructor Param Annotation\","
+ + "<a href=\"AnnotationType.html#required()\">required</a>=1994)\n"
+ + "int documented,\n"
+ + "int undocmented)</span></div>");
//=================================
// Annotatation Type Usage
--- a/test/langtools/jdk/javadoc/doclet/testOptions/TestOptions.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testOptions/TestOptions.java Tue Jun 04 16:33:37 2019 +0200
@@ -197,15 +197,16 @@
+ "<a id=\"DEFAULT_NAME\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre>static final java.lang.String "
- + "<a href=\"../src-html/linksource/AnnotationTypeField.html#line.32\">"
- + "DEFAULT_NAME</a></pre>",
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">static final</span> "
+ + "<span class=\"returnType\">java.lang.String</span> <span class=\"memberName\">"
+ + "<a href=\"../src-html/linksource/AnnotationTypeField.html#line.32\">DEFAULT_NAME</a></span></div>",
"<h3>name</h3>\n"
+ "<a id=\"name()\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre>java.lang.String <a href="
- + "\"../src-html/linksource/AnnotationTypeField.html#line.34\">name</a></pre>");
+ + "<div class=\"memberSignature\"><span class=\"returnType\">java.lang.String</span> "
+ + "<span class=\"memberName\"><a href=\"../src-html/linksource/AnnotationTypeField.html#line.34\">"
+ + "name</a></span></div>");
checkOutput("src-html/linksource/AnnotationTypeField.html", true,
"<title>Source code</title>",
@@ -215,10 +216,9 @@
checkOutput("linksource/Properties.html", true,
"<pre>public class <a href=\"../src-html/linksource/Properties.html#line.29\">"
+ "Properties</a>",
- "<pre>public java.lang.Object <a href="
- + "\"../src-html/linksource/Properties.html#line.31\">someProperty</a></pre>",
- "<pre class=\"methodSignature\">public java.lang.Object <a href="
- + "\"../src-html/linksource/Properties.html#line.31\">someProperty</a>()</pre>");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">java.lang.Object</span> <span class=\"memberName\">"
+ + "<a href=\"../src-html/linksource/Properties.html#line.31\">someProperty</a></span></div>");
checkOutput("src-html/linksource/Properties.html", true,
"<title>Source code</title>",
@@ -228,12 +228,15 @@
checkOutput("linksource/SomeClass.html", true,
"<pre>public class <a href=\"../src-html/linksource/SomeClass.html#line.29\">"
+ "SomeClass</a>\nextends java.lang.Object</pre>",
- "<pre>public int <a href=\"../src-html/linksource/SomeClass.html#line.31\">"
- + "field</a></pre>",
- "<pre>public <a href=\"../src-html/linksource/SomeClass.html#line.33\">"
- + "SomeClass</a>()</pre>",
- "<pre class=\"methodSignature\">public int <a href=\"../src-html/linksource/SomeClass.html#line.36\">"
- + "method</a>()</pre>");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">int</span> <span class=\"memberName\">"
+ + "<a href=\"../src-html/linksource/SomeClass.html#line.31\">field</a></span></div>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"memberName\"><a href=\"../src-html/linksource/SomeClass.html#line.33\">"
+ + "SomeClass</a></span>()</div>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">int</span> <span class=\"memberName\">"
+ + "<a href=\"../src-html/linksource/SomeClass.html#line.36\">method</a></span>()</div>");
checkOutput("src-html/linksource/SomeClass.html", true,
"<title>Source code</title>",
@@ -247,12 +250,14 @@
+ "public int method() {</a>");
checkOutput("linksource/SomeEnum.html", true,
- "<pre>public static final <a href=\"SomeEnum.html\" "
- + "title=\"enum in linksource\">SomeEnum</a> <a href="
- + "\"../src-html/linksource/SomeEnum.html#line.29\">VALUE1</a></pre>",
- "<pre>public static final <a href=\"SomeEnum.html\" "
- + "title=\"enum in linksource\">SomeEnum</a> <a href="
- + "\"../src-html/linksource/SomeEnum.html#line.30\">VALUE2</a></pre>");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public static final</span> "
+ + "<span class=\"returnType\"><a href=\"SomeEnum.html\" title=\"enum in linksource\">"
+ + "SomeEnum</a></span> <span class=\"memberName\">"
+ + "<a href=\"../src-html/linksource/SomeEnum.html#line.29\">VALUE1</a></span></div>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public static final</span> "
+ + "<span class=\"returnType\"><a href=\"SomeEnum.html\" title=\"enum in linksource\">"
+ + "SomeEnum</a></span> <span class=\"memberName\">"
+ + "<a href=\"../src-html/linksource/SomeEnum.html#line.30\">VALUE2</a></span></div>");
checkOutput("src-html/linksource/SomeEnum.html", true,
"<span class=\"sourceLineNo\">029</span><a id=\"line.29\"> VALUE1,</a>",
--- a/test/langtools/jdk/javadoc/doclet/testOrdering/TestOrdering.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testOrdering/TestOrdering.java Tue Jun 04 16:33:37 2019 +0200
@@ -516,10 +516,14 @@
checkOrder("pkg5/AnnoFieldTest.html",
"<h2>Field Details</h2>",
- "<pre>static final int one</pre>",
- "<pre>static final int two</pre>",
- "<pre>static final int three</pre>",
- "<pre>static final int four</pre>");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">static final</span> "
+ + "<span class=\"returnType\">int</span> <span class=\"memberName\">one</span></div>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">static final</span> "
+ + "<span class=\"returnType\">int</span> <span class=\"memberName\">two</span></div>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">static final</span> "
+ + "<span class=\"returnType\">int</span> <span class=\"memberName\">three</span></div>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">static final</span> "
+ + "<span class=\"returnType\">int</span> <span class=\"memberName\">four</span></div>");
checkOrder("pkg5/AnnoOptionalTest.html",
"<h2>Optional Element Summary</h2>",
--- a/test/langtools/jdk/javadoc/doclet/testOverriddenMethods/TestBadOverride.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testOverriddenMethods/TestBadOverride.java Tue Jun 04 16:33:37 2019 +0200
@@ -57,7 +57,8 @@
+ "<a id=\"toString()\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre class=\"methodSignature\">public void toString()</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">toString</span>()</div>\n"
+ "<div class=\"block\">Why can't I do this ?</div>\n"
+ "</section>");
}
--- a/test/langtools/jdk/javadoc/doclet/testOverriddenMethods/TestOverriddenDeprecatedMethods.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testOverriddenMethods/TestOverriddenDeprecatedMethods.java Tue Jun 04 16:33:37 2019 +0200
@@ -57,9 +57,11 @@
checkOrder("pkg1/SubClass.html",
"Method Detail",
- "@Deprecated\npublic void func1()",
+ "<span class=\"annotations\">@Deprecated\n</span><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">func1</span>()",
"<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated.</span></div>",
- "@Deprecated\npublic void func2()",
+ "<span class=\"annotations\">@Deprecated\n</span><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">func2</span>()",
"<div class=\"deprecationBlock\"><span class=\"deprecatedLabel\">Deprecated.</span></div>",
"<div class=\"block\">deprecated with comments</div>");
}
--- a/test/langtools/jdk/javadoc/doclet/testPrivateClasses/TestPrivateClasses.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testPrivateClasses/TestPrivateClasses.java Tue Jun 04 16:33:37 2019 +0200
@@ -70,7 +70,10 @@
+ "<div class=\"inheritance\">pkg.PublicChild</div>\n"
+ "</div>",
// Method is documented as though it is declared in the inheriting method.
- "<pre class=\"methodSignature\">public void methodInheritedFromParent​(int p1)",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">"
+ + "methodInheritedFromParent</span>​(<span class=\"arguments\">int p1)</span>\n"
+ + " throws <span class=\"exceptions\">java.lang.Exception</span></div>",
"<dl>\n"
+ "<dt>All Implemented Interfaces:</dt>\n"
+ "<dd><code><a href=\"PublicInterface.html\" title=\"interface in pkg\">"
--- a/test/langtools/jdk/javadoc/doclet/testProperty/TestProperty.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testProperty/TestProperty.java Tue Jun 04 16:33:37 2019 +0200
@@ -50,10 +50,10 @@
checkExit(Exit.OK);
checkOutput("pkg/MyClass.html", true,
- "<pre>public final <a href=\"ObjectProperty.html\" "
- + "title=\"class in pkg\">ObjectProperty</a>"
- + "<<a href=\"MyObj.html\" "
- + "title=\"class in pkg\">MyObj</a>> goodProperty</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\"><a href=\"ObjectProperty.html\" title=\"class in pkg\">"
+ + "ObjectProperty</a><<a href=\"MyObj.html\" title=\"class in pkg\">MyObj</a>></span>"
+ + " <span class=\"memberName\">goodProperty</span></div>\n"
+ "<div class=\"block\">This is an Object property where the "
+ "Object is a single Object.</div>\n"
+ "<dl>\n"
@@ -63,10 +63,10 @@
+ "<code>setGood(MyObj)</code></a></dd>\n"
+ "</dl>",
- "<pre>public final <a href=\"ObjectProperty.html\" "
- + "title=\"class in pkg\">ObjectProperty</a>"
- + "<<a href=\"MyObj.html\" "
- + "title=\"class in pkg\">MyObj</a>[]> badProperty</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\"><a href=\"ObjectProperty.html\" title=\"class in pkg\">"
+ + "ObjectProperty</a><<a href=\"MyObj.html\" title=\"class in pkg\">MyObj</a>[]></span>"
+ + " <span class=\"memberName\">badProperty</span></div>\n"
+ "<div class=\"block\">This is an Object property where the "
+ "Object is an array.</div>\n"
+ "<dl>\n"
@@ -94,11 +94,11 @@
);
checkOutput("pkg/MyClassT.html", true,
- "<pre>public final <a href=\"ObjectProperty.html\" "
- + "title=\"class in pkg\">ObjectProperty</a>"
- + "<java.util.List<<a href=\"MyClassT.html\" "
- + "title=\"type parameter in MyClassT\">T</a>>> "
- + "listProperty</pre>\n"
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\"><a href=\"ObjectProperty.html\" title=\"class in pkg\">"
+ + "ObjectProperty</a><java.util.List<<a href=\"MyClassT.html\" "
+ + "title=\"type parameter in MyClassT\">T</a>>></span> "
+ + "<span class=\"memberName\">listProperty</span></div>\n"
+ "<div class=\"block\">This is an Object property where the "
+ "Object is a single <code>List<T></code>.</div>\n"
+ "<dl>\n"
--- a/test/langtools/jdk/javadoc/doclet/testSerializedFormWithClassFile/TestSerializedFormWithClassFile.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testSerializedFormWithClassFile/TestSerializedFormWithClassFile.java Tue Jun 04 16:33:37 2019 +0200
@@ -73,10 +73,11 @@
checkExit(Exit.OK);
checkOutput("serialized-form.html", true,
- "<pre class=\"methodSignature\">public void readObject​"
- + "(java.io.ObjectInputStream arg0)\n"
- + " throws java.lang.ClassNotFoundException,\n"
- + " java.io.IOException</pre>\n");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">readObject</span>"
+ + "​(<span class=\"arguments\">java.io.ObjectInputStream arg0)</span>\n"
+ + " throws <span class=\"exceptions\">java.lang.ClassNotFoundException,\n"
+ + "java.io.IOException</span></div>\n");
}
void createTestClass(Path base, Path srcDir) throws Exception {
--- a/test/langtools/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java Tue Jun 04 16:33:37 2019 +0200
@@ -165,9 +165,9 @@
+ "th.colFirst a:link, th.colFirst a:visited,\n"
+ "th.colSecond a:link, th.colSecond a:visited,\n"
+ "th.colConstructorName a:link, th.colConstructorName a:visited,\n"
- + "th.colDeprecatedItemName a:link, th.colDeprecatedItemName a:visited, \n"
- + ".constantValuesContainer td a:link, .constantValuesContainer td a:visited, \n"
- + ".allClassesContainer td a:link, .allClassesContainer td a:visited, \n"
+ + "th.colDeprecatedItemName a:link, th.colDeprecatedItemName a:visited,\n"
+ + ".constantValuesContainer td a:link, .constantValuesContainer td a:visited,\n"
+ + ".allClassesContainer td a:link, .allClassesContainer td a:visited,\n"
+ ".allPackagesContainer td a:link, .allPackagesContainer td a:visited {\n"
+ " font-weight:bold;\n"
+ "}",
--- a/test/langtools/jdk/javadoc/doclet/testSummaryTag/TestSummaryTag.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testSummaryTag/TestSummaryTag.java Tue Jun 04 16:33:37 2019 +0200
@@ -90,7 +90,8 @@
+ "<a id=\"m3()\">\n"
+ "<!-- -->\n"
+ "</a>\n"
- + "<pre class=\"methodSignature\">public void m3()</pre>\n"
+ + "<div class=\"memberSignature\"><span class=\"modifiers\">public</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">m3</span>()</div>\n"
+ "<div class=\"block\">First sentence some text maybe second sentence.</div>\n"
+ "</section>\n"
);
--- a/test/langtools/jdk/javadoc/doclet/testTypeAnnotations/TestTypeAnnotations.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testTypeAnnotations/TestTypeAnnotations.java Tue Jun 04 16:33:37 2019 +0200
@@ -115,249 +115,274 @@
// Test for type annotations on fields (Fields.java).
checkOutput("typeannos/DefaultScope.html", true,
- "<pre><a href=\"Parameterized.html\" title=\"class in "
- + "typeannos\">Parameterized</a><<a href=\"FldA.html\" "
- + "title=\"annotation in typeannos\">@FldA</a> java.lang.String,​<a "
- + "href=\"FldB.html\" title=\"annotation in typeannos\">"
- + "@FldB</a> java.lang.String> bothTypeArgs</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"Parameterized.html\" "
+ + "title=\"class in typeannos\">Parameterized</a><<a href=\"FldA.html\" "
+ + "title=\"annotation in typeannos\">@FldA</a> java.lang.String,​"
+ + "<a href=\"FldB.html\" title=\"annotation in typeannos\">@FldB</a> java.lang.String>"
+ + "</span> <span class=\"memberName\">bothTypeArgs</span></div>",
- "<pre><a href=\"FldA.html\" title=\"annotation in "
- + "typeannos\">@FldA</a> java.lang.String <a href=\""
- + "FldB.html\" title=\"annotation in typeannos\">@FldB</a> [] "
- + "array1Deep</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"FldA.html\" "
+ + "title=\"annotation in typeannos\">@FldA</a> java.lang.String <a href=\"FldB.html\" "
+ + "title=\"annotation in typeannos\">@FldB</a> []</span> "
+ + "<span class=\"memberName\">array1Deep</span></div>",
- "<pre>java.lang.String <a href=\"FldB.html\" "
- + "title=\"annotation in typeannos\">@FldB</a> [][] array2SecondOld</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\">java.lang.String "
+ + "<a href=\"FldB.html\" title=\"annotation in typeannos\">@FldB</a> [][]</span> "
+ + "<span class=\"memberName\">array2SecondOld</span></div>",
// When JDK-8068737, we should change the order
- "<pre><a href=\"FldD.html\" title=\"annotation in typeannos\">"
- + "@FldD</a> java.lang.String "
- + "<a href=\"FldC.html\" title=\"annotation in typeannos\">@FldC</a> "
- + "<a href=\"FldB.html\" title=\"annotation in typeannos\">@FldB</a> [] "
- + "<a href=\"FldC.html\" title=\"annotation in typeannos\">@FldC</a> "
- + "<a href=\"FldA.html\" title=\"annotation in typeannos\">@FldA</a> [] "
- + "array2Deep</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"FldD.html\" "
+ + "title=\"annotation in typeannos\">@FldD</a> java.lang.String <a href=\"FldC.html\" "
+ + "title=\"annotation in typeannos\">@FldC</a> <a href=\"FldB.html\" "
+ + "title=\"annotation in typeannos\">@FldB</a> [] <a href=\"FldC.html\" "
+ + "title=\"annotation in typeannos\">@FldC</a> <a href=\"FldA.html\" "
+ + "title=\"annotation in typeannos\">@FldA</a> []</span> "
+ + "<span class=\"memberName\">array2Deep</span></div>");
checkOutput("typeannos/ModifiedScoped.html", true,
- "<pre>public final <a href=\"Parameterized.html\" "
- + "title=\"class in typeannos\">Parameterized</a><<a href=\""
- + "FldA.html\" title=\"annotation in typeannos\">@FldA</a> "
- + "<a href=\"Parameterized.html\" title=\"class in "
- + "typeannos\">Parameterized</a><<a href=\"FldA.html\" "
- + "title=\"annotation in typeannos\">@FldA</a> java.lang.String,​<a "
- + "href=\"FldB.html\" title=\"annotation in typeannos\">"
- + "@FldB</a> java.lang.String>,​<a href=\"FldB.html\" "
- + "title=\"annotation in typeannos\">@FldB</a> java.lang.String> "
- + "nestedParameterized</pre>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>"
+ + " <span class=\"returnType\"><a href=\"Parameterized.html\" "
+ + "title=\"class in typeannos\">Parameterized</a><<a href=\"FldA.html\" "
+ + "title=\"annotation in typeannos\">@FldA</a> <a href=\"Parameterized.html\" "
+ + "title=\"class in typeannos\">Parameterized</a><<a href=\"FldA.html\" "
+ + "title=\"annotation in typeannos\">@FldA</a> java.lang.String,​"
+ + "<a href=\"FldB.html\" title=\"annotation in typeannos\">@FldB</a> "
+ + "java.lang.String>,​<a href=\"FldB.html\" "
+ + "title=\"annotation in typeannos\">@FldB</a> java.lang.String>"
+ + "</span> <span class=\"memberName\">nestedParameterized</span></div>",
- "<pre>public final <a href=\"FldA.html\" "
- + "title=\"annotation in typeannos\">@FldA</a> java.lang.String[][] "
- + "array2</pre>");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\"><a href=\"FldA.html\" title=\"annotation in typeannos\">"
+ + "@FldA</a> java.lang.String[][]</span> "
+ + "<span class=\"memberName\">array2</span></div>");
// Test for type annotations on method return types (MethodReturnType.java).
checkOutput("typeannos/MtdDefaultScope.html", true,
- "<pre class=\"methodSignature\">public <T> <a href=\"MRtnA.html\" "
- + "title=\"annotation in typeannos\">@MRtnA</a> java.lang.String"
- + " method()</pre>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public</span>"
+ + " <span class=\"typeParameters\"><T></span> <span "
+ + "class=\"returnType\"><a href=\"MRtnA.html\" title=\"annotation in typeannos\">"
+ + "@MRtnA</a> java.lang.String</span> "
+ + "<span class=\"memberName\">method</span>()</div>",
// When JDK-8068737 is fixed, we should change the order
- "<pre class=\"methodSignature\"><a href=\"MRtnA.html\" title=\"annotation in typeannos\">"
- + "@MRtnA</a> java.lang.String "
- + "<a href=\"MRtnB.html\" title=\"annotation in typeannos\">@MRtnB</a> [] "
- + "<a href=\"MRtnA.html\" title=\"annotation in typeannos\">@MRtnA</a> []"
- + " array2Deep()</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"MRtnA.html\" "
+ + "title=\"annotation in typeannos\">@MRtnA</a> java.lang.String <a href=\"MRtnB.html\" "
+ + "title=\"annotation in typeannos\">@MRtnB</a> [] <a href=\"MRtnA.html\" "
+ + "title=\"annotation in typeannos\">@MRtnA</a> []</span> <span class=\"memberName\">"
+ + "array2Deep</span>()</div>",
- "<pre class=\"methodSignature\"><a href=\"MRtnA.html\" title=\"annotation in "
- + "typeannos\">@MRtnA</a> java.lang.String[][] array2()</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"MRtnA.html\" "
+ + "title=\"annotation in typeannos\">@MRtnA</a> java.lang.String[][]</span> "
+ + "<span class=\"memberName\">array2</span>()</div>");
checkOutput("typeannos/MtdModifiedScoped.html", true,
- "<pre class=\"methodSignature\">public final <a href=\"MtdParameterized.html\" "
- + "title=\"class in typeannos\">MtdParameterized</a><<a href=\""
- + "MRtnA.html\" title=\"annotation in typeannos\">@MRtnA</a> "
- + "<a href=\"MtdParameterized.html\" title=\"class in "
- + "typeannos\">MtdParameterized</a><<a href=\"MRtnA."
- + "html\" title=\"annotation in typeannos\">@MRtnA</a> java.lang."
- + "String,​<a href=\"MRtnB.html\" title=\"annotation in "
- + "typeannos\">@MRtnB</a> java.lang.String>,​<a href=\""
- + "MRtnB.html\" title=\"annotation in typeannos\">@MRtnB</a> java."
- + "lang.String> nestedMtdParameterized()</pre>");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\"><a href=\"MtdParameterized.html\" "
+ + "title=\"class in typeannos\">MtdParameterized</a><<a href=\"MRtnA.html\" "
+ + "title=\"annotation in typeannos\">@MRtnA</a> <a href=\"MtdParameterized.html\" "
+ + "title=\"class in typeannos\">MtdParameterized</a><<a href=\"MRtnA.html\" "
+ + "title=\"annotation in typeannos\">@MRtnA</a> java.lang.String,​"
+ + "<a href=\"MRtnB.html\" title=\"annotation in typeannos\">@MRtnB</a> "
+ + "java.lang.String>,​<a href=\"MRtnB.html\" title=\"annotation in typeannos\">"
+ + "@MRtnB</a> java.lang.String></span> <span class=\"memberName\">"
+ + "nestedMtdParameterized</span>()</div>");
// Test for type annotations on method type parameters (MethodTypeParameters.java).
checkOutput("typeannos/UnscopedUnmodified.html", true,
- "<pre class=\"methodSignature\"><K extends <a href=\"MTyParamA.html\" title=\""
- + "annotation in typeannos\">@MTyParamA</a> java.lang.String>"
- + " void methodExtends()</pre>",
+ "<div class=\"memberSignature\"><span class=\"typeParameters\"><K extends "
+ + "<a href=\"MTyParamA.html\" title=\"annotation in typeannos\">@MTyParamA</a> "
+ + "java.lang.String></span> <span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">methodExtends</span>()</div>",
- "<pre class=\"methodSignature\"><K extends <a href=\"MTyParamA.html\" title=\""
- + "annotation in typeannos\">@MTyParamA</a> <a href=\""
- + "MtdTyParameterized.html\" title=\"class in typeannos\">"
- + "MtdTyParameterized</a><<a href=\"MTyParamB.html\" "
- + "title=\"annotation in typeannos\">@MTyParamB</a> java.lang.String"
- + ">> void nestedExtends()</pre>");
+ "<div class=\"memberSignature\"><span class=\"typeParametersLong\"><K extends "
+ + "<a href=\"MTyParamA.html\" title=\"annotation in typeannos\">@MTyParamA</a> "
+ + "<a href=\"MtdTyParameterized.html\" title=\"class in typeannos\">MtdTyParameterized</a>"
+ + "<<a href=\"MTyParamB.html\" title=\"annotation in typeannos\">@MTyParamB</a> "
+ + "java.lang.String>></span>\n<span class=\"returnType\">void</span>"
+ + " <span class=\"memberName\">nestedExtends</span>()</div>");
checkOutput("typeannos/PublicModifiedMethods.html", true,
- "<pre class=\"methodSignature\">public final <K extends <a href=\""
- + "MTyParamA.html\" title=\"annotation in typeannos\">@MTyParamA</a> "
- + "java.lang.String> void methodExtends()</pre>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"typeParameters\"><K extends <a href=\"MTyParamA.html\" "
+ + "title=\"annotation in typeannos\">@MTyParamA</a> java.lang.String></span>\n"
+ + "<span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">methodExtends</span>()</div>",
- "<pre class=\"methodSignature\">public final <K extends <a href=\""
- + "MTyParamA.html\" title=\"annotation in typeannos\">@MTyParamA</a> "
- + "java.lang.String,​V extends <a href=\"MTyParamA.html\" "
- + "title=\"annotation in typeannos\">@MTyParamA</a> <a href=\""
- + "MtdTyParameterized.html\" title=\"class in typeannos\">"
- + "MtdTyParameterized</a><<a href=\"MTyParamB.html\" "
- + "title=\"annotation in typeannos\">@MTyParamB</a> java.lang.String"
- + ">> void dual()</pre>");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>"
+ + " <span class=\"typeParametersLong\"><K extends <a href=\"MTyParamA.html\" "
+ + "title=\"annotation in typeannos\">@MTyParamA</a> java.lang.String,​\n"
+ + "V extends <a href=\"MTyParamA.html\" title=\"annotation in typeannos\">"
+ + "@MTyParamA</a> <a href=\"MtdTyParameterized.html\" title=\"class in typeannos\">"
+ + "MtdTyParameterized</a><<a href=\"MTyParamB.html\" title=\"annotation in typeannos\">"
+ + "@MTyParamB</a> java.lang.String>></span>\n<span class=\"returnType\">void</span>"
+ + " <span class=\"memberName\">dual</span>()</div>");
// Test for type annotations on parameters (Parameters.java).
checkOutput("typeannos/Parameters.html", true,
- "<pre class=\"methodSignature\">void unannotated​(<a href=\""
- + "ParaParameterized.html\" title=\"class in typeannos\">"
- + "ParaParameterized</a><java.lang.String,​java.lang.String>"
- + " a)</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">unannotated</span>​(<span class=\"arguments\">"
+ + "<a href=\"ParaParameterized.html\" title=\"class in typeannos\">ParaParameterized</a>"
+ + "<java.lang.String,​java.lang.String> a)</span></div>",
- "<pre class=\"methodSignature\">void nestedParaParameterized​(<a href=\""
- + "ParaParameterized.html\" title=\"class in typeannos\">"
- + "ParaParameterized</a><<a href=\"ParamA.html\" "
- + "title=\"annotation in typeannos\">@ParamA</a> <a href=\""
- + "ParaParameterized.html\" title=\"class in typeannos\">"
- + "ParaParameterized</a><<a href=\"ParamA.html\" "
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">nestedParaParameterized</span>​"
+ + "(<span class=\"arguments\"><a href=\"ParaParameterized.html\" "
+ + "title=\"class in typeannos\">ParaParameterized</a><<a href=\"ParamA.html\" "
+ + "title=\"annotation in typeannos\">@ParamA</a> <a href=\"ParaParameterized.html\" "
+ + "title=\"class in typeannos\">ParaParameterized</a><<a href=\"ParamA.html\" "
+ "title=\"annotation in typeannos\">@ParamA</a> java.lang.String,​"
- + "<a href=\"ParamB.html\" title=\"annotation in "
- + "typeannos\">@ParamB</a> java.lang.String>,​<a href=\""
- + "ParamB.html\" title=\"annotation in typeannos\">@ParamB"
- + "</a> java.lang.String> a)</pre>",
+ + "<a href=\"ParamB.html\" title=\"annotation in typeannos\">@ParamB</a> "
+ + "java.lang.String>,​<a href=\"ParamB.html\" title=\"annotation in typeannos\">"
+ + "@ParamB</a> java.lang.String> a)</span></div>",
// When JDK-8068737 is fixed, we should change the order
- "<pre class=\"methodSignature\">void array2Deep​(<a href=\"ParamA.html\" "
- + "title=\"annotation in typeannos\">@ParamA</a> java.lang.String "
- + "<a href=\"ParamB.html\" title=\"annotation in typeannos\">"
- + "@ParamB</a> [] "
- + "<a href=\"ParamA.html\" title=\"annotation in typeannos\">"
- + "@ParamA</a> []"
- + " a)</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">array2Deep</span>​(<span class=\"arguments\">"
+ + "<a href=\"ParamA.html\" title=\"annotation in typeannos\">@ParamA</a> "
+ + "java.lang.String <a href=\"ParamB.html\" title=\"annotation in typeannos\">"
+ + "@ParamB</a> [] <a href=\"ParamA.html\" title=\"annotation in typeannos\">"
+ + "@ParamA</a> [] a)</span></div>");
// Test for type annotations on throws (Throws.java).
checkOutput("typeannos/ThrDefaultUnmodified.html", true,
- "<pre class=\"methodSignature\">void oneException()\n"
- + " throws <a href=\"ThrA.html\" title=\""
- + "annotation in typeannos\">@ThrA</a> java.lang.Exception</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">oneException</span>()\n"
+ + " throws <span class=\"exceptions\"><a href=\"ThrA.html\" "
+ + "title=\"annotation in typeannos\">@ThrA</a> java.lang.Exception</span></div>",
- "<pre class=\"methodSignature\">void twoExceptions()\n"
- + " throws <a href=\"ThrA.html\" title=\""
- + "annotation in typeannos\">@ThrA</a> java.lang.RuntimeException,\n"
- + " <a href=\"ThrA.html\" title=\""
- + "annotation in typeannos\">@ThrA</a> java.lang.Exception</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">twoExceptions</span>()\n"
+ + " throws <span class=\"exceptions\"><a href=\"ThrA.html\" "
+ + "title=\"annotation in typeannos\">@ThrA</a> java.lang.RuntimeException,\n"
+ + "<a href=\"ThrA.html\" title=\"annotation in typeannos\">@ThrA</a> "
+ + "java.lang.Exception</span></div>");
checkOutput("typeannos/ThrPublicModified.html", true,
- "<pre class=\"methodSignature\">public final void oneException​"
- + "(java.lang.String a)\n throws <a href=\"ThrA.html\" "
- + "title=\"annotation in typeannos\">@ThrA</a> java.lang.Exception</pre>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">"
+ + "oneException</span>​(<span class=\"arguments\">java.lang.String a)</span>\n"
+ + " throws <span class=\"exceptions\"><a href=\"ThrA.html\" "
+ + "title=\"annotation in typeannos\">@ThrA</a> java.lang.Exception</span></div>",
- "<pre class=\"methodSignature\">public final void twoExceptions​"
- + "(java.lang.String a)\n throws <a href=\"ThrA.html\" "
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">"
+ + "twoExceptions</span>​(<span class=\"arguments\">java.lang.String a)</span>\n"
+ + " throws <span class=\"exceptions\"><a href=\"ThrA.html\" "
+ "title=\"annotation in typeannos\">@ThrA</a> java.lang.RuntimeException,\n"
- + " <a href=\"ThrA.html\" "
- + "title=\"annotation in typeannos\">@ThrA</a> java.lang.Exception</pre>");
+ + "<a href=\"ThrA.html\" title=\"annotation in typeannos\">@ThrA</a> "
+ + "java.lang.Exception</span></div>");
checkOutput("typeannos/ThrWithValue.html", true,
- "<pre class=\"methodSignature\">void oneException()\n"
- + " throws <a href=\"ThrB.html\" title=\""
- + "annotation in typeannos\">@ThrB</a>("
- + "\"m\") java.lang.Exception</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">oneException</span>()\n"
+ + " throws <span class=\"exceptions\"><a href=\"ThrB.html\" "
+ + "title=\"annotation in typeannos\">@ThrB</a>(\"m\") java.lang.Exception</span></div>",
- "<pre class=\"methodSignature\">void twoExceptions()\n"
- + " throws <a href=\"ThrB.html\" title=\""
- + "annotation in typeannos\">@ThrB</a>("
- + "\"m\") java.lang.RuntimeException,\n"
- + " <a href=\"ThrA.html\" title=\""
- + "annotation in typeannos\">@ThrA</a> java.lang.Exception</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">twoExceptions</span>()\n"
+ + " throws <span class=\"exceptions\"><a href=\"ThrB.html\" "
+ + "title=\"annotation in typeannos\">@ThrB</a>(\"m\") java.lang.RuntimeException,\n"
+ + "<a href=\"ThrA.html\" title=\"annotation in typeannos\">@ThrA</a> "
+ + "java.lang.Exception</span></div>");
// Test for type annotations on type parameters (TypeParameters.java).
checkOutput("typeannos/TestMethods.html", true,
- "<pre class=\"methodSignature\"><K,​<a href=\"TyParaA.html\" title="
- + "\"annotation in typeannos\">@TyParaA</a> V extends <a href=\"TyParaA.html\" "
- + "title=\"annotation in typeannos\">@TyParaA</a> "
- + "java.lang.String> void secondAnnotated()</pre>"
+ "<div class=\"memberSignature\"><span class=\"typeParameters\"><K,​\n"
+ + "<a href=\"TyParaA.html\" title=\"annotation in typeannos\">@TyParaA</a> V extends "
+ + "<a href=\"TyParaA.html\" title=\"annotation in typeannos\">@TyParaA</a> "
+ + "java.lang.String></span>\n<span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">secondAnnotated</span>()</div>"
);
// Test for type annotations on wildcard type (Wildcards.java).
checkOutput("typeannos/BoundTest.html", true,
- "<pre class=\"methodSignature\">void wcExtends​(<a href=\"MyList.html\" "
- + "title=\"class in typeannos\">MyList</a><? extends <a href=\""
- + "WldA.html\" title=\"annotation in typeannos\">@WldA"
- + "</a> java.lang.String> l)</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">wcExtends</span>​(<span class=\"arguments\">"
+ + "<a href=\"MyList.html\" title=\"class in typeannos\">MyList</a><? extends "
+ + "<a href=\"WldA.html\" title=\"annotation in typeannos\">@WldA</a> "
+ + "java.lang.String> l)</span></div>",
- "<pre class=\"methodSignature\"><a href=\"MyList.html\" title=\"class in "
- + "typeannos\">MyList</a><? super <a href=\"WldA.html\" "
- + "title=\"annotation in typeannos\">@WldA</a> java.lang.String>"
- + " returnWcSuper()</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"MyList.html\" "
+ + "title=\"class in typeannos\">MyList</a><? super <a href=\"WldA.html\" "
+ + "title=\"annotation in typeannos\">@WldA</a> java.lang.String></span> "
+ + "<span class=\"memberName\">returnWcSuper</span>()</div>");
checkOutput("typeannos/BoundWithValue.html", true,
- "<pre class=\"methodSignature\">void wcSuper​(<a href=\"MyList.html\""
- + " title=\"class in typeannos\">MyList</a><? super <a href=\""
- + "WldB.html\" title=\"annotation in typeannos\">@WldB</a>("
- + "\"m\") java.lang."
- + "String> l)</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">wcSuper</span>​(<span class=\"arguments\">"
+ + "<a href=\"MyList.html\" title=\"class in typeannos\">MyList</a><? super "
+ + "<a href=\"WldB.html\" title=\"annotation in typeannos\">@WldB</a>(\"m\") "
+ + "java.lang.String> l)</span></div>",
- "<pre class=\"methodSignature\"><a href=\"MyList.html\" title=\"class in "
- + "typeannos\">MyList</a><? extends <a href=\"WldB."
- + "html\" title=\"annotation in typeannos\">@WldB</a>("
- + "\"m\") java.lang.String"
- + "> returnWcExtends()</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"MyList.html\" "
+ + "title=\"class in typeannos\">MyList</a><? extends <a href=\"WldB.html\" "
+ + "title=\"annotation in typeannos\">@WldB</a>(\"m\") java.lang.String></span>"
+ + " <span class=\"memberName\">returnWcExtends</span>()</div>");
// Test for receiver annotations (Receivers.java).
checkOutput("typeannos/DefaultUnmodified.html", true,
- "<pre class=\"methodSignature\">void withException​(<a href=\"RcvrA.html\" "
- + "title=\"annotation in typeannos\">@RcvrA</a> "
- + "DefaultUnmodified this)\n"
- + " throws java."
- + "lang.Exception</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">withException</span>​(<span class=\"arguments\">"
+ + "<a href=\"RcvrA.html\" title=\"annotation in typeannos\">@RcvrA</a>"
+ + " DefaultUnmodified this)</span>\n"
+ + " throws <span class=\"exceptions\">java.lang.Exception</span></div>",
- "<pre class=\"methodSignature\">java.lang.String nonVoid​(<a href=\"RcvrA."
- + "html\" title=\"annotation in typeannos\">@RcvrA</a> <a href=\""
- + "RcvrB.html\" title=\"annotation in typeannos\">@RcvrB"
- + "</a>(\"m\")"
- + " DefaultUnmodified this)</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\">java.lang.String</span> "
+ + "<span class=\"memberName\">nonVoid</span>​(<span class=\"arguments\">"
+ + "<a href=\"RcvrA.html\" title=\"annotation in typeannos\">@RcvrA</a> "
+ + "<a href=\"RcvrB.html\" title=\"annotation in typeannos\">@RcvrB</a>(\"m\")"
+ + " DefaultUnmodified this)</span></div>",
- "<pre class=\"methodSignature\"><T extends java.lang.Runnable> void accept​("
- + "<a href=\"RcvrA.html\" title=\"annotation in "
- + "typeannos\">@RcvrA</a> DefaultUnmodified this,\n"
- + " T r)\n"
- + " throws java.lang.Exception</pre>");
+ "<div class=\"memberSignature\"><span class=\"typeParameters\"><T extends "
+ + "java.lang.Runnable></span> <span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">accept</span>​(<span class=\"arguments\">"
+ + "<a href=\"RcvrA.html\" title=\"annotation in typeannos\">@RcvrA</a> "
+ + "DefaultUnmodified this,\nT r)</span>\n"
+ + " throws <span class=\"exceptions\">"
+ + "java.lang.Exception</span></div>");
checkOutput("typeannos/PublicModified.html", true,
- "<pre class=\"methodSignature\">public final java.lang.String nonVoid​"
- + "(<a href=\"RcvrA.html\" title=\"annotation in typeannos\">"
- + "@RcvrA</a> PublicModified this)</pre>",
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"returnType\">java.lang.String</span> <span class=\"memberName\">"
+ + "nonVoid</span>​(<span class=\"arguments\"><a href=\"RcvrA.html\" "
+ + "title=\"annotation in typeannos\">@RcvrA</a> PublicModified this)"
+ + "</span></div>",
- "<pre class=\"methodSignature\">public final <T extends java.lang.Runnable> "
- + "void accept​(<a href=\"RcvrA.html\" title=\""
- + "annotation in typeannos\">@RcvrA</a> PublicModified this,\n"
- + " T r)\n"
- + " throws java.lang.Exception</pre>");
+ "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span> "
+ + "<span class=\"typeParameters\"><T extends java.lang.Runnable></span> "
+ + "<span class=\"returnType\">void</span> <span class=\"memberName\">accept"
+ + "</span>​(<span class=\"arguments\"><a href=\"RcvrA.html\" "
+ + "title=\"annotation in typeannos\">@RcvrA</a> PublicModified this,\n"
+ + "T r)</span>\n throws "
+ + "<span class=\"exceptions\">java.lang.Exception</span></div>");
checkOutput("typeannos/WithValue.html", true,
- "<pre class=\"methodSignature\"><T extends java.lang.Runnable> void accept​("
- + "<a href=\"RcvrB.html\" title=\"annotation in "
- + "typeannos\">@RcvrB</a>("
- + "\"m\") WithValue this,\n"
- + " T r)\n"
- + " throws java.lang.Exception</pre>");
+ "<div class=\"memberSignature\"><span class=\"typeParameters\"><T extends "
+ + "java.lang.Runnable></span> <span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">accept</span>​(<span class=\"arguments\">"
+ + "<a href=\"RcvrB.html\" title=\"annotation in typeannos\">@RcvrB</a>(\"m\")"
+ + " WithValue this,\nT r)</span>\n"
+ + " throws <span class=\"exceptions\">"
+ + "java.lang.Exception</span></div>");
checkOutput("typeannos/WithFinal.html", true,
- "<pre class=\"methodSignature\">java.lang.String nonVoid​(<a href=\"RcvrB.html\" "
- + "title=\"annotation in typeannos\">@RcvrB</a>(\"m\") "
- + "<a href=\"WithFinal.html\" title=\"class in typeannos\">"
- + "WithFinal</a> afield)</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\">java.lang.String</span>"
+ + " <span class=\"memberName\">nonVoid</span>​(<span class=\"arguments\">"
+ + "<a href=\"RcvrB.html\" title=\"annotation in typeannos\">@RcvrB</a>(\"m\") "
+ + "<a href=\"WithFinal.html\" title=\"class in typeannos\">WithFinal</a>"
+ + " afield)</span></div>");
checkOutput("typeannos/WithBody.html", true,
- "<pre class=\"methodSignature\">void field​(<a href=\"RcvrA.html\" title=\""
- + "annotation in typeannos\">@RcvrA</a> WithBody this)</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">field</span>​(<span class=\"arguments\">"
+ + "<a href=\"RcvrA.html\" title=\"annotation in typeannos\">@RcvrA</a>"
+ + " WithBody this)</span></div>");
checkOutput("typeannos/Generic2.html", true,
- "<pre class=\"methodSignature\">void test2​(<a href=\"RcvrA.html\" title=\""
- + "annotation in typeannos\">@RcvrA</a> Generic2<X> this)</pre>");
+ "<div class=\"memberSignature\"><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">test2</span>​(<span class=\"arguments\">"
+ + "<a href=\"RcvrA.html\" title=\"annotation in typeannos\">@RcvrA</a>"
+ + " Generic2<X> this)</span></div>");
// Test for repeated type annotations (RepeatedAnnotations.java).
@@ -393,84 +418,82 @@
// + "extends java.lang.Object</pre>");
checkOutput("typeannos/RepeatingOnConstructor.html", true,
- "<pre><a href=\"RepConstructorA.html\" title=\"annotation "
- + "in typeannos\">@RepConstructorA</a> <a href=\"RepConstructorA.html"
- + "\" title=\"annotation in typeannos\">@RepConstructorA</a>\n<a href="
- + "\"RepConstructorB.html\" title=\"annotation in typeannos"
- + "\">@RepConstructorB</a> <a href=\"RepConstructorB.html"
- + "\" title=\"annotation in typeannos\">@RepConstructorB</a>\n"
- + "RepeatingOnConstructor()</pre>",
+ "<div class=\"memberSignature\"><span class=\"annotations\">"
+ + "<a href=\"RepConstructorA.html\" title=\"annotation in typeannos\">"
+ + "@RepConstructorA</a> <a href=\"RepConstructorA.html\" "
+ + "title=\"annotation in typeannos\">@RepConstructorA</a>\n"
+ + "<a href=\"RepConstructorB.html\" title=\"annotation in typeannos\">"
+ + "@RepConstructorB</a> <a href=\"RepConstructorB.html\" "
+ + "title=\"annotation in typeannos\">@RepConstructorB</a>\n"
+ + "</span><span class=\"memberName\">RepeatingOnConstructor</span>()</div>",
- "<pre><a href=\"RepConstructorA.html\" title=\"annotation in typeannos"
- + "\">@RepConstructorA</a> <a href=\"RepConstructorA.html"
- + "\" title=\"annotation in typeannos\">@RepConstructorA</a>\n<a href="
- + "\"RepConstructorB.html\" title=\"annotation in typeannos"
- + "\">@RepConstructorB</a> <a href=\"RepConstructorB.html"
- + "\" title=\"annotation in typeannos\">@RepConstructorB</a>\n"
- + "RepeatingOnConstructor​(int i,\n int j)</pre>",
+ "<div class=\"memberSignature\"><span class=\"annotations\">"
+ + "<a href=\"RepConstructorA.html\" title=\"annotation in typeannos\">"
+ + "@RepConstructorA</a> <a href=\"RepConstructorA.html\" "
+ + "title=\"annotation in typeannos\">@RepConstructorA</a>\n"
+ + "<a href=\"RepConstructorB.html\" title=\"annotation in typeannos\">"
+ + "@RepConstructorB</a> <a href=\"RepConstructorB.html\" "
+ + "title=\"annotation in typeannos\">@RepConstructorB</a>\n"
+ + "</span><span class=\"memberName\">RepeatingOnConstructor</span>"
+ + "​(<span class=\"arguments\">int i,\n"
+ + "int j)</span></div>",
- "<pre><a href=\"RepAllContextsA.html\" title=\"annotation in typeannos"
- + "\">@RepAllContextsA</a> <a href=\"RepAllContextsA.html"
- + "\" title=\"annotation in typeannos\">@RepAllContextsA</a>\n"
- + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos"
- + "\">@RepAllContextsB</a> <a href=\"RepAllContextsB.html"
- + "\" title=\"annotation in typeannos\">@RepAllContextsB</a>\n"
- + "RepeatingOnConstructor​(int i,\n int j,\n"
- + " int k)</pre>",
+ "<div class=\"memberSignature\"><span class=\"annotations\">"
+ + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">"
+ + "@RepAllContextsA</a> <a href=\"RepAllContextsA.html\" "
+ + "title=\"annotation in typeannos\">@RepAllContextsA</a>\n"
+ + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">"
+ + "@RepAllContextsB</a> <a href=\"RepAllContextsB.html\" "
+ + "title=\"annotation in typeannos\">@RepAllContextsB</a>\n"
+ + "</span><span class=\"memberName\">RepeatingOnConstructor</span>"
+ + "​(<span class=\"arguments\">int i,\n"
+ + "int j,\nint k)</span></div>",
- "<pre>RepeatingOnConstructor​(<a href=\"RepParameterA.html"
- + "\" title=\"annotation in typeannos\">@RepParameterA</a> <a href="
- + "\"RepParameterA.html\" title=\"annotation in typeannos"
- + "\">@RepParameterA</a> <a href=\"RepParameterB.html"
- + "\" title=\"annotation in typeannos\">@RepParameterB</a> "
- + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos"
- + "\">@RepParameterB</a>\n java.lang.String parameter,\n"
- + " <a href=\"RepParameterA.html\" "
- + "title=\"annotation in typeannos\">@RepParameterA</a> <a href="
- + "\"RepParameterA.html\" title=\"annotation in typeannos\">"
- + "@RepParameterA</a> <a href=\"RepParameterB.html\" "
- + "title=\"annotation in typeannos\">@RepParameterB</a> <a href="
- + "\"RepParameterB.html\" title=\"annotation in typeannos\">"
- + "@RepParameterB</a>\n java.lang.String "
- + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" "
- + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
- + "\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
- + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseB</a> ... vararg)</pre>"
+ "<div class=\"memberSignature\"><span class=\"memberName\">RepeatingOnConstructor</span>"
+ + "​(<span class=\"arguments\"><a href=\"RepParameterA.html\" "
+ + "title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
+ + "java.lang.String parameter,\n<a href=\"RepParameterA.html\" "
+ + "title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
+ + "java.lang.String <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseB</a> ... vararg)</span></div>"
);
checkOutput("typeannos/RepeatingOnConstructor.Inner.html", true,
"<code><span class=\"memberNameLink\"><a href=\"#%3Cinit%3E(java.lang.String,"
+ "java.lang.String...)\">Inner</a></span>​(java.lang.String parameter,\n"
- + " java.lang.String <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ + "java.lang.String <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
+ "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
+ "@RepTypeUseB</a> ... vararg)</code>",
- "Inner​(<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html"
- + "\" title=\"annotation in typeannos\">@RepTypeUseB</a> <a href="
- + "\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseB</a> RepeatingOnConstructor this,\n <a href="
- + "\"RepParameterA.html\" title=\"annotation in typeannos\">"
- + "@RepParameterA</a> <a href=\"RepParameterA.html\" title="
- + "\"annotation in typeannos\">@RepParameterA</a> <a href=\"RepParameterB.html"
- + "\" title=\"annotation in typeannos\">@RepParameterB</a> <a href="
- + "\"RepParameterB.html\" title=\"annotation in typeannos\">"
- + "@RepParameterB</a>\n java.lang.String parameter,\n"
- + " <a href=\"RepParameterA.html\" title=\"annotation in typeannos\">"
- + "@RepParameterA</a> <a href=\"RepParameterA.html\" title="
- + "\"annotation in typeannos\">@RepParameterA</a> <a href=\"RepParameterB.html"
- + "\" title=\"annotation in typeannos\">@RepParameterB</a> <a href="
- + "\"RepParameterB.html\" title=\"annotation in typeannos\">"
- + "@RepParameterB</a>\n java.lang.String <a href=\"RepTypeUseA.html"
- + "\" title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
- + "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html"
- + "\" title=\"annotation in typeannos\">@RepTypeUseB</a> ... vararg)");
+ "Inner</span>​(<span class=\"arguments\"><a href=\"RepTypeUseA.html\" "
+ + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" "
+ + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" "
+ + "title=\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
+ + "title=\"annotation in typeannos\">@RepTypeUseB</a> RepeatingOnConstructor this,\n"
+ + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
+ + "java.lang.String parameter,\n<a href=\"RepParameterA.html\" "
+ + "title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
+ + "java.lang.String <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseB</a> ... vararg)</span>");
checkOutput("typeannos/RepeatingOnField.html", true,
"<code>(package private) java.lang.Integer</code></td>\n<th class=\"colSecond\" scope=\"row\">"
@@ -519,57 +542,55 @@
+ "\"memberNameLink\"><a href=\"#sa"
+ "\">sa</a></span></code>",
- "<pre><a href=\"RepFieldA.html\" title=\"annotation in typeannos\">"
- + "@RepFieldA</a> <a href=\"RepFieldA.html\" title="
- + "\"annotation in typeannos\">@RepFieldA</a>\n<a href=\"RepFieldB.html"
- + "\" title=\"annotation in typeannos\">@RepFieldB</a> <a href="
- + "\"RepFieldB.html\" title=\"annotation in typeannos\">"
- + "@RepFieldB</a>\njava.lang.Integer i1</pre>",
+ "<div class=\"memberSignature\"><span class=\"annotations\">"
+ + "<a href=\"RepFieldA.html\" title=\"annotation in typeannos\">@RepFieldA</a> "
+ + "<a href=\"RepFieldA.html\" title=\"annotation in typeannos\">@RepFieldA</a>\n"
+ + "<a href=\"RepFieldB.html\" title=\"annotation in typeannos\">@RepFieldB</a> "
+ + "<a href=\"RepFieldB.html\" title=\"annotation in typeannos\">@RepFieldB</a>\n"
+ + "</span><span class=\"returnType\">java.lang.Integer</span> "
+ + "<span class=\"memberName\">i1</span></div>",
- "<pre><a href=\"RepTypeUseA.html\" title=\"annotation in typeannos"
- + "\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html"
- + "\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
- + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseB</a> java.lang.Integer i2</pre>",
-
- "<pre><a href=\"RepFieldA.html\" title=\"annotation in typeannos\">"
- + "@RepFieldA</a> <a href=\"RepFieldA.html\" title="
- + "\"annotation in typeannos\">@RepFieldA</a>\n<a href=\"RepFieldB.html"
- + "\" title=\"annotation in typeannos\">@RepFieldB</a> <a href="
- + "\"RepFieldB.html\" title=\"annotation in typeannos\">"
- + "@RepFieldB</a>\n<a href=\"RepTypeUseA.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html"
- + "\" title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
- + "\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseB</a> java.lang.Integer i3</pre>",
+ "<div class=\"memberSignature\"><span class=\"returnType\">"
+ + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
+ + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
+ + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
+ + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
+ + "java.lang.Integer</span> <span class=\"memberName\">i2</span></div>",
- "<pre><a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">"
- + "@RepAllContextsA</a> <a href=\"RepAllContextsA.html"
- + "\" title=\"annotation in typeannos\">@RepAllContextsA</a>\n<a href="
- + "\"RepAllContextsB.html\" title=\"annotation in typeannos\">"
- + "@RepAllContextsB</a> <a href=\"RepAllContextsB.html"
- + "\" title=\"annotation in typeannos\">@RepAllContextsB</a>\n"
- + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">"
- + "@RepAllContextsA</a> <a href=\"RepAllContextsA.html\" "
- + "title=\"annotation in typeannos\">@RepAllContextsA</a> <a href="
- + "\"RepAllContextsB.html\" title=\"annotation in typeannos\">"
- + "@RepAllContextsB</a> <a href=\"RepAllContextsB.html"
- + "\" title=\"annotation in typeannos\">@RepAllContextsB</a> java.lang.Integer i4</pre>",
+ "<div class=\"memberSignature\"><span class=\"annotations\">"
+ + "<a href=\"RepFieldA.html\" title=\"annotation in typeannos\">@RepFieldA</a> "
+ + "<a href=\"RepFieldA.html\" title=\"annotation in typeannos\">@RepFieldA</a>\n"
+ + "<a href=\"RepFieldB.html\" title=\"annotation in typeannos\">@RepFieldB</a> "
+ + "<a href=\"RepFieldB.html\" title=\"annotation in typeannos\">@RepFieldB</a>\n"
+ + "</span><span class=\"returnType\"><a href=\"RepTypeUseA.html\" "
+ + "title=\"annotation in typeannos\">@RepTypeUseA</a> "
+ + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
+ + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
+ + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
+ + "java.lang.Integer</span> <span class=\"memberName\">i3</span></div>",
- "<pre>java.lang.String <a href=\"RepTypeUseA.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html"
- + "\" title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
- + "\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseB</a> [] <a href="
- + "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" "
- + "title=\"annotation in typeannos\">@RepTypeUseB</a> <a href="
- + "\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseB</a> [] sa</pre>");
+ "<div class=\"memberSignature\"><span class=\"annotations\">"
+ + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">@RepAllContextsA</a> "
+ + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">@RepAllContextsA</a>\n"
+ + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a> "
+ + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a>\n"
+ + "</span><span class=\"returnType\"><a href=\"RepAllContextsA.html\" "
+ + "title=\"annotation in typeannos\">@RepAllContextsA</a> "
+ + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">@RepAllContextsA</a> "
+ + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a> "
+ + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a> "
+ + "java.lang.Integer</span> <span class=\"memberName\">i4</span></div>",
+
+ "<div class=\"memberSignature\"><span class=\"returnType\">java.lang.String "
+ + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
+ + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
+ + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
+ + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> [] "
+ + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
+ + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
+ + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
+ + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> []"
+ + "</span> <span class=\"memberName\">sa</span></div>");
checkOutput("typeannos/RepeatingOnMethod.html", true,
"<code>(package private) java.lang.String</code></td>\n<th class=\"colSecond\" scope=\"row\">"
@@ -608,7 +629,7 @@
"<code><span class=\"memberNameLink\"><a href=\""
+ "#test5(java.lang.String,java.lang.String...)\">test5</a></span>"
- + "​(java.lang.String parameter,\n java.lang.String <a href="
+ + "​(java.lang.String parameter,\njava.lang.String <a href="
+ "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title="
+ "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html"
@@ -616,69 +637,63 @@
+ "\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
+ "@RepTypeUseB</a> ... vararg)</code>",
- "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">"
- + "@RepMethodA</a> <a href=\"RepMethodA.html\" title="
- + "\"annotation in typeannos\">@RepMethodA</a>\n<a href=\"RepMethodB.html\""
- + " title=\"annotation in typeannos\">@RepMethodB</a> <a href="
- + "\"RepMethodB.html\" title=\"annotation in typeannos\">"
- + "@RepMethodB</a>\njava.lang.String test1()",
+ "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a> "
+ + "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a>\n"
+ + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a> "
+ + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a>\n"
+ + "</span><span class=\"returnType\">java.lang.String</span> "
+ + "<span class=\"memberName\">test1</span>()",
"<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title="
+ "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" "
+ "title=\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
- + "title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.String test2()",
+ + "title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.String</span>"
+ + " <span class=\"memberName\">test2</span>()",
- "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">"
- + "@RepMethodA</a> <a href=\"RepMethodA.html\" title="
- + "\"annotation in typeannos\">@RepMethodA</a>\n<a href=\"RepMethodB.html\" "
- + "title=\"annotation in typeannos\">@RepMethodB</a> <a href="
- + "\"RepMethodB.html\" title=\"annotation in typeannos\">"
- + "@RepMethodB</a>\n<a href=\"RepTypeUseA.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" "
- + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
- + "\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseB</a> java.lang.String test3()",
+ "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a> "
+ + "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a>\n"
+ + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a> "
+ + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a>\n"
+ + "</span><span class=\"returnType\"><a href=\"RepTypeUseA.html\" "
+ + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" "
+ + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" "
+ + "title=\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
+ + "title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.String</span> "
+ + "<span class=\"memberName\">test3</span>()",
- "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">"
- + "@RepAllContextsA</a> <a href=\"RepAllContextsA.html\" "
- + "title=\"annotation in typeannos\">@RepAllContextsA</a>\n<a href="
- + "\"RepAllContextsB.html\" title=\"annotation in typeannos\">"
- + "@RepAllContextsB</a> <a href=\"RepAllContextsB.html\" "
- + "title=\"annotation in typeannos\">@RepAllContextsB</a>\n<a href="
- + "\"RepAllContextsA.html\" title=\"annotation in typeannos\">"
- + "@RepAllContextsA</a> <a href=\"RepAllContextsA.html\" "
- + "title=\"annotation in typeannos\">@RepAllContextsA</a> <a href="
- + "\"RepAllContextsB.html\" title=\"annotation in typeannos\">"
- + "@RepAllContextsB</a> <a href=\"RepAllContextsB.html\" "
- + "title=\"annotation in typeannos\">@RepAllContextsB</a> java.lang.String test4()",
+ "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">@RepAllContextsA</a> "
+ + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">@RepAllContextsA</a>\n"
+ + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a> "
+ + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a>\n"
+ + "</span><span class=\"returnType\"><a href=\"RepAllContextsA.html\" "
+ + "title=\"annotation in typeannos\">@RepAllContextsA</a> <a href=\"RepAllContextsA.html\" "
+ + "title=\"annotation in typeannos\">@RepAllContextsA</a> <a href=\"RepAllContextsB.html\" "
+ + "title=\"annotation in typeannos\">@RepAllContextsB</a> <a href=\"RepAllContextsB.html\" "
+ + "title=\"annotation in typeannos\">@RepAllContextsB</a> java.lang.String</span> "
+ + "<span class=\"memberName\">test4</span>()",
- "java.lang.String test5​(<a href=\"RepTypeUseA.html\" "
- + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
- + "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
- + "title=\"annotation in typeannos\">@RepTypeUseB</a> RepeatingOnMethod "
- + "this,\n <a href=\"RepParameterA.html\" "
- + "title=\"annotation in typeannos\">@RepParameterA</a> <a href="
- + "\"RepParameterA.html\" title=\"annotation in typeannos\">"
- + "@RepParameterA</a> <a href=\"RepParameterB.html\" "
- + "title=\"annotation in typeannos\">@RepParameterB</a> <a href="
- + "\"RepParameterB.html\" title=\"annotation in typeannos\">"
- + "@RepParameterB</a>\n java.lang.String parameter,\n"
- + " <a href=\"RepParameterA.html\" title="
- + "\"annotation in typeannos\">@RepParameterA</a> <a href=\"RepParameterA.html\""
- + " title=\"annotation in typeannos\">@RepParameterA</a> <a href="
- + "\"RepParameterB.html\" title=\"annotation in typeannos\">"
- + "@RepParameterB</a> <a href=\"RepParameterB.html\" title="
- + "\"annotation in typeannos\">@RepParameterB</a>\n "
- + "java.lang.String <a href=\"RepTypeUseA.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" "
- + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
- + "\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title="
- + "\"annotation in typeannos\">@RepTypeUseB</a> ... vararg)");
+ "java.lang.String</span> <span class=\"memberName\">test5</span>​("
+ + "<span class=\"arguments\"><a href=\"RepTypeUseA.html\" "
+ + "title=\"annotation in typeannos\">@RepTypeUseA</a> "
+ + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
+ + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
+ + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a>"
+ + " RepeatingOnMethod this,\n"
+ + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
+ + "java.lang.String parameter,\n"
+ + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
+ + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
+ + "java.lang.String <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
+ + "@RepTypeUseB</a> ... vararg)");
checkOutput("typeannos/RepeatingOnTypeParametersBoundsTypeArgumentsOnMethod.html", true,
"<code>(package private) <T> java.lang.String</code></td>\n"
@@ -699,7 +714,9 @@
+ "<span class=\"memberNameLink\"><a href=\"#"
+ "test()\">test</a></span>()</code>",
- "java.lang.String test​(<a href=\"RepTypeUseA.html\" "
+ "<span class=\"returnType\">java.lang.String</span> "
+ + "<span class=\"memberName\">test</span>"
+ + "​(<span class=\"arguments\"><a href=\"RepTypeUseA.html\" "
+ "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
+ "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
+ "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title="
@@ -713,11 +730,11 @@
+ "title=\"annotation in typeannos\">@RepTypeUseB</a> T> this)");
checkOutput("typeannos/RepeatingOnVoidMethodDeclaration.html", true,
- "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">"
- + "@RepMethodA</a> <a href=\"RepMethodA.html\" title="
- + "\"annotation in typeannos\">@RepMethodA</a>\n<a href=\"RepMethodB.html"
- + "\" title=\"annotation in typeannos\">@RepMethodB</a> <a href="
- + "\"RepMethodB.html\" title=\"annotation in typeannos\">"
- + "@RepMethodB</a>\nvoid test()");
+ "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a> "
+ + "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a>\n"
+ + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a> "
+ + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a>\n"
+ + "</span><span class=\"returnType\">void</span> "
+ + "<span class=\"memberName\">test</span>()");
}
}
--- a/test/langtools/jdk/javadoc/doclet/testTypeParams/TestTypeParameters.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testTypeParams/TestTypeParameters.java Tue Jun 04 16:33:37 2019 +0200
@@ -54,7 +54,7 @@
checkExit(Exit.OK);
checkOutput("pkg/C.html", true,
- "<td class=\"colFirst\"><code><W extends java.lang.String,​V extends "
+ "<td class=\"colFirst\"><code><W extends java.lang.String,​\nV extends "
+ "java.util.List><br>java.lang.Object</code></td>",
"<code><T> java.lang.Object</code>");
--- a/test/langtools/jdk/javadoc/doclet/testVisibleMembers/TestVisibleMembers.java Tue Jun 04 16:20:42 2019 +0200
+++ b/test/langtools/jdk/javadoc/doclet/testVisibleMembers/TestVisibleMembers.java Tue Jun 04 16:33:37 2019 +0200
@@ -272,7 +272,7 @@
checkOrder("p/C.html",
"METHOD DETAIL",
- "public", "void", "method()",
+ "public", "void", "method",
"See Also:",
"sub()",
"sub1()");
@@ -307,7 +307,7 @@
checkOrder("p/C.html",
"METHOD DETAIL",
- "public", "void", "method()", "See Also:", "sub()", "I.sub1()",
+ "public", "void", "method", "See Also:", "sub()", "I.sub1()",
"public", "void", "m", "Method in C. See", "I.length()"
);
@@ -411,10 +411,10 @@
checkOrder("p/C.html",
"METHOD DETAIL",
- "public", "void", "m()", "Method m in p.B",
- "public", "void", "n()", "Method n in p.A",
- "public", "void", "o()", "Description copied from class:", ">A<", "Method o in p.A",
- "public", "void", "p()", "Method p in p.B",
+ "public", "void", "m", "Method m in p.B",
+ "public", "void", "n", "Method n in p.A",
+ "public", "void", "o", "Description copied from class:", ">A<", "Method o in p.A",
+ "public", "void", "p", "Method p in p.B",
"END OF CLASS DATA");
checkOutput("p/C.html", false,
@@ -471,10 +471,10 @@
checkOrder("p/C.html",
"METHOD DETAIL",
- "public", "void", "m()", "Method m in p.B",
- "public", "void", "n()", "Method n in p.A",
- "public", "void", "o()", "Description copied from class:", ">A<", "Method o in p.A",
- "public", "void", "p()", "Method p in p.B",
+ "public", "void", "m", "Method m in p.B",
+ "public", "void", "n", "Method n in p.A",
+ "public", "void", "o", "Description copied from class:", ">A<", "Method o in p.A",
+ "public", "void", "p", "Method p in p.B",
"END OF CLASS DATA");
checkOutput("p/C.html", false,