< prev index next >

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassWriterImpl.java

Print this page

        

*** 31,43 **** import java.util.SortedSet; import java.util.TreeSet; import javax.lang.model.element.AnnotationMirror; import javax.lang.model.element.Element; - import javax.lang.model.element.ElementKind; import javax.lang.model.element.ModuleElement; import javax.lang.model.element.PackageElement; import javax.lang.model.element.TypeElement; import javax.lang.model.type.TypeMirror; import javax.lang.model.util.SimpleElementVisitor8; import com.sun.source.doctree.DocTree; --- 31,43 ---- import java.util.SortedSet; import java.util.TreeSet; import javax.lang.model.element.AnnotationMirror; import javax.lang.model.element.Element; import javax.lang.model.element.ModuleElement; import javax.lang.model.element.PackageElement; + import javax.lang.model.element.RecordComponentElement; import javax.lang.model.element.TypeElement; import javax.lang.model.type.TypeMirror; import javax.lang.model.util.SimpleElementVisitor8; import com.sun.source.doctree.DocTree;
*** 209,219 **** } /** * {@inheritDoc} */ ! @Override public void addClassSignature(String modifiers, Content classInfoTree) { Content hr = new HtmlTree(HtmlTag.HR); classInfoTree.add(hr); Content pre = new HtmlTree(HtmlTag.PRE); addAnnotationInfo(typeElement, pre); --- 209,219 ---- } /** * {@inheritDoc} */ ! @Override @SuppressWarnings("preview") public void addClassSignature(String modifiers, Content classInfoTree) { Content hr = new HtmlTree(HtmlTag.HR); classInfoTree.add(hr); Content pre = new HtmlTree(HtmlTag.PRE); addAnnotationInfo(typeElement, pre);
*** 230,239 **** --- 230,242 ---- } else { Content span = HtmlTree.SPAN(HtmlStyle.typeNameLabel, className); span.add(parameterLinks); pre.add(span); } + if (utils.isRecord(typeElement)) { + pre.add(getRecordComponents(typeElement)); + } if (!utils.isInterface(typeElement)) { TypeMirror superclass = utils.getFirstVisibleSuperClass(typeElement); if (superclass != null) { pre.add(DocletConstants.NL); pre.add("extends ");
*** 265,274 **** --- 268,297 ---- } } classInfoTree.add(pre); } + @SuppressWarnings("preview") + private Content getRecordComponents(TypeElement typeElem) { + Content content = new ContentBuilder(); + content.add("("); + String sep = ""; + for (RecordComponentElement e : typeElement.getRecordComponents()) { + content.add(sep); + getAnnotations(e.getAnnotationMirrors(), false).stream() + .forEach(a -> { content.add(a); content.add(" "); }); + Content link = getLink(new LinkInfoImpl(configuration, LinkInfoImpl.Kind.RECORD_COMPONENT, + e.asType())); + content.add(link); + content.add(Entity.NO_BREAK_SPACE); + content.add(e.getSimpleName()); + sep = ", "; + } + content.add(")"); + return content; + } + /** * {@inheritDoc} */ @Override public void addClassDescription(Content classInfoTree) {
< prev index next >