20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package jdk.javadoc.internal.doclets.formats.html;
27
28 import java.util.Arrays;
29 import java.util.List;
30
31 import javax.lang.model.element.Element;
32 import javax.lang.model.element.ExecutableElement;
33 import javax.lang.model.element.TypeElement;
34
35 import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
36 import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
37 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
38 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
39 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
40 import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
41 import jdk.javadoc.internal.doclets.formats.html.markup.Table;
42 import jdk.javadoc.internal.doclets.formats.html.markup.TableHeader;
43 import jdk.javadoc.internal.doclets.toolkit.ConstructorWriter;
44 import jdk.javadoc.internal.doclets.toolkit.Content;
45 import jdk.javadoc.internal.doclets.toolkit.MemberSummaryWriter;
46 import jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberTable;
47
48 import static jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberTable.Kind.CONSTRUCTORS;
49
50
51 /**
52 * Writes constructor documentation.
53 *
54 * <p><b>This is NOT part of any supported API.
55 * If you write code that depends on this, you do so at your own risk.
56 * This code and its internal interfaces are subject to change or
57 * deletion without notice.</b>
58 *
59 * @author Robert Field
60 * @author Atul M Dambalkar
135 @Override
136 public Content getConstructorDocTreeHeader(ExecutableElement constructor,
137 Content constructorDetailsTree) {
138 String erasureAnchor;
139 Content constructorDocTree = new ContentBuilder();
140 Content heading = new HtmlTree(Headings.TypeDeclaration.MEMBER_HEADING);
141 heading.add(name(constructor));
142 constructorDocTree.add(heading);
143 if ((erasureAnchor = getErasureAnchor(constructor)) != null) {
144 constructorDocTree.add(links.createAnchor((erasureAnchor)));
145 }
146 constructorDocTree.add(links.createAnchor(writer.getAnchor(constructor)));
147 return HtmlTree.SECTION(HtmlStyle.detail, constructorDocTree);
148 }
149
150 /**
151 * {@inheritDoc}
152 */
153 @Override
154 public Content getSignature(ExecutableElement constructor) {
155 Content pre = new HtmlTree(HtmlTag.PRE);
156 writer.addAnnotationInfo(constructor, pre);
157 int annotationLength = pre.charCount();
158 addModifiers(constructor, pre);
159 if (configuration.linksource) {
160 Content constructorName = new StringContent(name(constructor));
161 writer.addSrcLink(constructor, constructorName, pre);
162 } else {
163 addName(name(constructor), pre);
164 }
165 int indent = pre.charCount() - annotationLength;
166 addParameters(constructor, pre, indent);
167 addExceptions(constructor, pre, indent);
168 return pre;
169 }
170
171 /**
172 * {@inheritDoc}
173 */
174 @Override
175 public void addDeprecated(ExecutableElement constructor, Content constructorDocTree) {
176 addDeprecatedInfo(constructor, constructorDocTree);
177 }
178
179 /**
180 * {@inheritDoc}
181 */
182 @Override
183 public void addComments(ExecutableElement constructor, Content constructorDocTree) {
184 addComment(constructor, constructorDocTree);
185 }
186
187 /**
188 * {@inheritDoc}
|
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package jdk.javadoc.internal.doclets.formats.html;
27
28 import java.util.Arrays;
29 import java.util.List;
30
31 import javax.lang.model.element.Element;
32 import javax.lang.model.element.ExecutableElement;
33 import javax.lang.model.element.TypeElement;
34
35 import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
36 import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
37 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
38 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
39 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
40 import jdk.javadoc.internal.doclets.formats.html.markup.Table;
41 import jdk.javadoc.internal.doclets.formats.html.markup.TableHeader;
42 import jdk.javadoc.internal.doclets.toolkit.ConstructorWriter;
43 import jdk.javadoc.internal.doclets.toolkit.Content;
44 import jdk.javadoc.internal.doclets.toolkit.MemberSummaryWriter;
45 import jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberTable;
46
47 import static jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberTable.Kind.CONSTRUCTORS;
48
49
50 /**
51 * Writes constructor documentation.
52 *
53 * <p><b>This is NOT part of any supported API.
54 * If you write code that depends on this, you do so at your own risk.
55 * This code and its internal interfaces are subject to change or
56 * deletion without notice.</b>
57 *
58 * @author Robert Field
59 * @author Atul M Dambalkar
134 @Override
135 public Content getConstructorDocTreeHeader(ExecutableElement constructor,
136 Content constructorDetailsTree) {
137 String erasureAnchor;
138 Content constructorDocTree = new ContentBuilder();
139 Content heading = new HtmlTree(Headings.TypeDeclaration.MEMBER_HEADING);
140 heading.add(name(constructor));
141 constructorDocTree.add(heading);
142 if ((erasureAnchor = getErasureAnchor(constructor)) != null) {
143 constructorDocTree.add(links.createAnchor((erasureAnchor)));
144 }
145 constructorDocTree.add(links.createAnchor(writer.getAnchor(constructor)));
146 return HtmlTree.SECTION(HtmlStyle.detail, constructorDocTree);
147 }
148
149 /**
150 * {@inheritDoc}
151 */
152 @Override
153 public Content getSignature(ExecutableElement constructor) {
154 return new MemberSignature(constructor)
155 .addParameters(getParameters(constructor, true))
156 .addExceptions(getExceptions(constructor))
157 .toContent();
158 }
159
160 /**
161 * {@inheritDoc}
162 */
163 @Override
164 public void addDeprecated(ExecutableElement constructor, Content constructorDocTree) {
165 addDeprecatedInfo(constructor, constructorDocTree);
166 }
167
168 /**
169 * {@inheritDoc}
170 */
171 @Override
172 public void addComments(ExecutableElement constructor, Content constructorDocTree) {
173 addComment(constructor, constructorDocTree);
174 }
175
176 /**
177 * {@inheritDoc}
|