1 /* gnu.classpath.tools.taglets.ValueTaglet
2 Copyright (C) 2004 Free Software Foundation, Inc.
4 This file is part of GNU Classpath.
6 GNU Classpath is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
11 GNU Classpath is distributed in the hope that it will be useful, but
12 WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with GNU Classpath; see the file COPYING. If not, write to the
18 Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
21 package gnu.classpath.tools.taglets;
25 import com.sun.tools.doclets.Taglet;
27 import com.sun.javadoc.Doc;
28 import com.sun.javadoc.Tag;
29 import com.sun.javadoc.FieldDoc;
30 import com.sun.javadoc.MemberDoc;
31 import com.sun.javadoc.SeeTag;
34 * The default Taglet which shows final static field values.
36 * @author Julian Scheid (julian@sektor37.de)
38 public class ValueTaglet
39 implements GnuExtendedTaglet
41 private static final String NAME = "value";
43 public String getName() {
47 public boolean inField() {
51 public boolean inConstructor() {
55 public boolean inMethod() {
59 public boolean inOverview() {
63 public boolean inPackage() {
67 public boolean inType() {
71 public boolean isInlineTag() {
75 public static void register(Map tagletMap) {
76 ValueTaglet valueTaglet = new ValueTaglet();
77 tagletMap.put(valueTaglet.getName(), valueTaglet);
80 public String toString(Tag tag) {
84 public String toString(Tag tag, TagletContext context) {
85 if (0 == tag.inlineTags().length) {
86 if (context.getDoc().isField()) {
87 FieldDoc fieldDoc = (FieldDoc)context.getDoc();
88 if (fieldDoc.isStatic() && fieldDoc.isFinal()) {
89 return fieldDoc.constantValueExpression();
94 MemberDoc referencedMember = ((SeeTag)tag).referencedMember();
95 if (null != referencedMember && referencedMember.isField()) {
96 FieldDoc fieldDoc = (FieldDoc)referencedMember;
97 if (fieldDoc.isStatic() && fieldDoc.isFinal()) {
98 return fieldDoc.constantValueExpression();
105 public String toString(Tag[] tags) {
109 public String toString(Tag[] tags, TagletContext context) {