]> gitweb.fperrin.net Git - Dictionary.git/blobdiff - jars/icu4j-4_2_1-src/src/com/ibm/icu/dev/tool/docs/ICUTaglet.java
go
[Dictionary.git] / jars / icu4j-4_2_1-src / src / com / ibm / icu / dev / tool / docs / ICUTaglet.java
old mode 100755 (executable)
new mode 100644 (file)
index 1a6b0e1..4e3c22d
-//##header\r
-/**\r
-*******************************************************************************\r
-* Copyright (C) 2002-2009, International Business Machines Corporation and    *\r
-* others. All Rights Reserved.                                                *\r
-*******************************************************************************\r
-*/\r
-\r
-/**\r
- * Preprocess with com.ibm.icu.dev.tool.docs.CodeMangler to generate\r
- * either a JDK 1.4 or JDK 1.5 version.  For the 1.5 version, define\r
- * VERSION_1.5.\r
- */\r
-\r
-package com.ibm.icu.dev.tool.docs;\r
-\r
-import com.sun.javadoc.*;\r
-//#if defined(J2SE13) || defined(J2SE14)\r
-//##import com.sun.tools.doclets.*;\r
-//#else\r
-// jdk 1.5 contains both com.sun.tools.doclets.Taglet and\r
-// com.sun.tools.doclets.internal.toolkit.taglets.Taglet.\r
-// Their registration code casts to the second, not the first, and the\r
-// second doesn't implement the first, so if you just implement the\r
-// first, you die.\r
-import com.sun.tools.doclets.internal.toolkit.taglets.*;\r
-import com.sun.tools.doclets.internal.toolkit.taglets.Taglet;\r
-//#endif\r
-\r
-import java.text.BreakIterator;\r
-import java.util.Locale;\r
-import java.util.Map;\r
-\r
-public abstract class ICUTaglet implements Taglet {\r
-    protected final String name;\r
-    protected final int mask;\r
-\r
-    protected static final int MASK_FIELD = 1;\r
-    protected static final int MASK_CONSTRUCTOR = 2;\r
-    protected static final int MASK_METHOD = 4;\r
-    protected static final int MASK_OVERVIEW = 8;\r
-    protected static final int MASK_PACKAGE = 16;\r
-    protected static final int MASK_TYPE = 32;\r
-    protected static final int MASK_INLINE = 64;\r
-\r
-    protected static final int MASK_DEFAULT = 0x003f; // no inline\r
-    protected static final int MASK_VALID = 0x007f; // includes inline\r
-\r
-    public static void register(Map taglets) {\r
-        ICUInternalTaglet.register(taglets);\r
-        ICUDraftTaglet.register(taglets);\r
-        ICUStableTaglet.register(taglets);\r
-//#if defined(J2SE13) || defined(J2SE14)\r
-//##        ICUDeprecatedTaglet.register(taglets);\r
-//#endif\r
-        ICUProvisionalTaglet.register(taglets);\r
-        ICUObsoleteTaglet.register(taglets);\r
-        ICUIgnoreTaglet.register(taglets);\r
-    }\r
-\r
-    protected ICUTaglet(String name, int mask) {\r
-        this.name = name;\r
-        this.mask = mask & MASK_VALID;\r
-    }\r
-\r
-    public boolean inField() {\r
-        return (mask & MASK_FIELD) != 0;\r
-    }\r
-\r
-    public boolean inConstructor() {\r
-        return (mask & MASK_CONSTRUCTOR) != 0;\r
-    }\r
-\r
-    public boolean inMethod() {\r
-        return (mask & MASK_METHOD) != 0;\r
-    }\r
-\r
-    public boolean inOverview() {\r
-        return (mask & MASK_OVERVIEW) != 0;\r
-    }\r
-\r
-    public boolean inPackage() {\r
-        return (mask & MASK_PACKAGE) != 0;\r
-    }\r
-\r
-    public boolean inType() {\r
-        return (mask & MASK_TYPE) != 0;\r
-    }\r
-\r
-    public boolean isInlineTag() {\r
-        return (mask & MASK_INLINE) != 0;\r
-    }\r
-\r
-    public String getName() {\r
-        return name;\r
-    }\r
-\r
-    public String toString(Tag tag) {\r
-        return tag.text();\r
-    }\r
-\r
-    public String toString(Tag[] tags) {\r
-        if (tags != null) {\r
-            if (tags.length > 1) {\r
-                String msg = "Should not have more than one ICU tag per element:\n";\r
-                for (int i = 0; i < tags.length; ++i) {\r
-                    msg += "  [" + i + "] " + tags[i] + "\n";\r
-                }\r
-                throw new IllegalStateException(msg);\r
-            } else if (tags.length > 0) {\r
-                return toString(tags[0]);\r
-            }\r
-        }\r
-        return null;\r
-    }\r
-\r
-//#if defined(J2SE13) || defined(J2SE14)\r
-//#else\r
-    public TagletOutput getTagletOutput(Tag tag, TagletWriter writer) throws IllegalArgumentException {\r
-        TagletOutput out = writer.getTagletOutputInstance();\r
-        out.setOutput(toString(tag));\r
-        return out;\r
-    }\r
-\r
-    public TagletOutput getTagletOutput(Doc holder, TagletWriter writer) throws IllegalArgumentException {\r
-        TagletOutput out = writer.getTagletOutputInstance();\r
-        Tag[] tags = holder.tags(getName());\r
-        if (tags.length == 0) {\r
-            return null;\r
-        }\r
-        out.setOutput(toString(tags[0]));\r
-        return out;\r
-    }\r
-//#endif\r
-\r
-    protected static final String STATUS = "<dt><b>Status:</b></dt>";\r
-\r
-    public static class ICUInternalTaglet extends ICUTaglet {\r
-        private static final String NAME = "internal";\r
-\r
-        public static void register(Map taglets) {\r
-            taglets.put(NAME, new ICUInternalTaglet());\r
-        }\r
-\r
-        private ICUInternalTaglet() {\r
-            super(NAME, MASK_DEFAULT);\r
-        }\r
-\r
-        public String toString(Tag tag) {\r
-            return STATUS + "<dd><em>Internal</em>. <font color='red'>This API is <em>ICU internal only</em>.</font></dd>";\r
-        }\r
-    }\r
-\r
-    public static class ICUDraftTaglet extends ICUTaglet {\r
-        private static final String NAME = "draft";\r
-\r
-        public static void register(Map taglets) {\r
-            taglets.put(NAME, new ICUDraftTaglet());\r
-        }\r
-\r
-        private ICUDraftTaglet() {\r
-            super(NAME, MASK_DEFAULT);\r
-        }\r
-\r
-        public String toString(Tag tag) {\r
-            String text = tag.text();\r
-            if (text.length() == 0) {\r
-                System.err.println("Warning: empty draft tag");\r
-            }\r
-            return STATUS + "<dd>Draft " + tag.text() + ".</dd>";\r
-        }\r
-    }\r
-\r
-    public static class ICUStableTaglet extends ICUTaglet {\r
-        private static final String NAME = "stable";\r
-\r
-        public static void register(Map taglets) {\r
-            taglets.put(NAME, new ICUStableTaglet());\r
-        }\r
-\r
-        private ICUStableTaglet() {\r
-            super(NAME, MASK_DEFAULT);\r
-        }\r
-\r
-        public String toString(Tag tag) {\r
-            String text = tag.text();\r
-            if (text.length() > 0) {\r
-                return STATUS + "<dd>Stable " + text + ".</dd>";\r
-            } else {\r
-                return STATUS + "<dd>Stable.</dd>";\r
-            }\r
-        }\r
-    }\r
-//#if defined(J2SE13) || defined(J2SE14)\r
-//##    /*\r
-//##     * sigh, in JDK 1.5 we can't override the standard deprecated taglet\r
-//##     * so easily.  I'm not impressed with the javadoc code.\r
-//##     */\r
-//##    public static class ICUDeprecatedTaglet extends ICUTaglet {\r
-//##        private static final String NAME = "deprecated";\r
-//##\r
-//##        public static void register(Map taglets) {\r
-//##            taglets.remove(NAME); // override standard deprecated taglet\r
-//##            taglets.put(NAME, new ICUDeprecatedTaglet());\r
-//##        }\r
-//##\r
-//##        private ICUDeprecatedTaglet() {\r
-//##            super(NAME, MASK_DEFAULT);\r
-//##        }\r
-//##\r
-//##        public String toString(Tag tag) {\r
-//##            BreakIterator bi = BreakIterator.getSentenceInstance(Locale.US);\r
-//##            String text = tag.text();\r
-//##            bi.setText(text);\r
-//##            int first = bi.first();\r
-//##            int next = bi.next();\r
-//##            if (first == -1 || next == -1) {\r
-//##                System.err.println("Warning: bad deprecated tag '" + text + "'");\r
-//##                return "<dd><em>Note</em>. " + text + "</dd>";\r
-//##            } else {\r
-//##                if ("This API is ICU internal only.".equals(text)) {\r
-//##                    return null;\r
-//##                }\r
-//##                return "<dd><em>Note, " + text.substring(first, next) + "</em>. " + text.substring(next) + "</dd>";\r
-//##            }\r
-//##        }\r
-//##    }\r
-//#endif\r
-\r
-    public static class ICUProvisionalTaglet extends ICUTaglet {\r
-        private static final String NAME = "provisional";\r
-\r
-        public static void register(Map taglets) {\r
-            taglets.remove(NAME); // override standard deprecated taglet\r
-            taglets.put(NAME, new ICUProvisionalTaglet());\r
-        }\r
-\r
-        private ICUProvisionalTaglet() {\r
-            super(NAME, MASK_DEFAULT);\r
-        }\r
-\r
-        public String toString(Tag tag) {\r
-            return null;\r
-        }\r
-    }\r
-\r
-    public static class ICUObsoleteTaglet extends ICUTaglet {\r
-        private static final String NAME = "obsolete";\r
-\r
-        public static void register(Map taglets) {\r
-            taglets.put(NAME, new ICUObsoleteTaglet());\r
-        }\r
-\r
-        private ICUObsoleteTaglet() {\r
-            super(NAME, MASK_DEFAULT);\r
-        }\r
-\r
-        public String toString(Tag tag) {\r
-            BreakIterator bi = BreakIterator.getSentenceInstance(Locale.US);\r
-            String text = tag.text();\r
-            bi.setText(text);\r
-            int first = bi.first();\r
-            int next = bi.next();\r
-            if (text.length() == 0) {\r
-                first = next = 0;\r
-            }\r
-            return STATUS + "<dd><em>Obsolete.</em> <font color='red'>Will be removed in " + text.substring(first, next) + "</font>. " + text.substring(next) + "</dd>";\r
-\r
-        }\r
-    }\r
-\r
-    public static class ICUIgnoreTaglet extends ICUTaglet {\r
-        private static ICUTaglet singleton;\r
-\r
-        public static void register(Map taglets) {\r
-            if (singleton == null) {\r
-                singleton = new ICUIgnoreTaglet();\r
-            }\r
-            taglets.put("bug", singleton);\r
-            taglets.put("test", singleton);\r
-            taglets.put("summary", singleton);\r
-        }\r
-\r
-        private ICUIgnoreTaglet() {\r
-            super(".ignore", MASK_DEFAULT);\r
-        }\r
-\r
-        public String toString(Tag tag) {\r
-            return null;\r
-        }\r
-    }\r
-}\r
+//##header J2SE15
+/**
+*******************************************************************************
+* Copyright (C) 2002-2009, International Business Machines Corporation and    *
+* others. All Rights Reserved.                                                *
+*******************************************************************************
+*/
+
+/**
+ * Preprocess with com.ibm.icu.dev.tool.docs.CodeMangler to generate
+ * either a JDK 1.4 or JDK 1.5 version.  For the 1.5 version, define
+ * VERSION_1.5.
+ */
+
+package com.ibm.icu.dev.tool.docs;
+
+import com.sun.javadoc.*;
+//#if defined(J2SE13) || defined(J2SE14)
+//##import com.sun.tools.doclets.*;
+//#else
+// jdk 1.5 contains both com.sun.tools.doclets.Taglet and
+// com.sun.tools.doclets.internal.toolkit.taglets.Taglet.
+// Their registration code casts to the second, not the first, and the
+// second doesn't implement the first, so if you just implement the
+// first, you die.
+import com.sun.tools.doclets.internal.toolkit.taglets.*;
+import com.sun.tools.doclets.internal.toolkit.taglets.Taglet;
+//#endif
+
+import java.text.BreakIterator;
+import java.util.Locale;
+import java.util.Map;
+
+public abstract class ICUTaglet implements Taglet {
+    protected final String name;
+    protected final int mask;
+
+    protected static final int MASK_FIELD = 1;
+    protected static final int MASK_CONSTRUCTOR = 2;
+    protected static final int MASK_METHOD = 4;
+    protected static final int MASK_OVERVIEW = 8;
+    protected static final int MASK_PACKAGE = 16;
+    protected static final int MASK_TYPE = 32;
+    protected static final int MASK_INLINE = 64;
+
+    protected static final int MASK_DEFAULT = 0x003f; // no inline
+    protected static final int MASK_VALID = 0x007f; // includes inline
+
+    public static void register(Map taglets) {
+        ICUInternalTaglet.register(taglets);
+        ICUDraftTaglet.register(taglets);
+        ICUStableTaglet.register(taglets);
+//#if defined(J2SE13) || defined(J2SE14)
+//##        ICUDeprecatedTaglet.register(taglets);
+//#endif
+        ICUProvisionalTaglet.register(taglets);
+        ICUObsoleteTaglet.register(taglets);
+        ICUIgnoreTaglet.register(taglets);
+    }
+
+    protected ICUTaglet(String name, int mask) {
+        this.name = name;
+        this.mask = mask & MASK_VALID;
+    }
+
+    public boolean inField() {
+        return (mask & MASK_FIELD) != 0;
+    }
+
+    public boolean inConstructor() {
+        return (mask & MASK_CONSTRUCTOR) != 0;
+    }
+
+    public boolean inMethod() {
+        return (mask & MASK_METHOD) != 0;
+    }
+
+    public boolean inOverview() {
+        return (mask & MASK_OVERVIEW) != 0;
+    }
+
+    public boolean inPackage() {
+        return (mask & MASK_PACKAGE) != 0;
+    }
+
+    public boolean inType() {
+        return (mask & MASK_TYPE) != 0;
+    }
+
+    public boolean isInlineTag() {
+        return (mask & MASK_INLINE) != 0;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public String toString(Tag tag) {
+        return tag.text();
+    }
+
+    public String toString(Tag[] tags) {
+        if (tags != null) {
+            if (tags.length > 1) {
+                String msg = "Should not have more than one ICU tag per element:\n";
+                for (int i = 0; i < tags.length; ++i) {
+                    msg += "  [" + i + "] " + tags[i] + "\n";
+                }
+                throw new IllegalStateException(msg);
+            } else if (tags.length > 0) {
+                return toString(tags[0]);
+            }
+        }
+        return null;
+    }
+
+//#if defined(J2SE13) || defined(J2SE14)
+//#else
+    public TagletOutput getTagletOutput(Tag tag, TagletWriter writer) throws IllegalArgumentException {
+        TagletOutput out = writer.getTagletOutputInstance();
+        out.setOutput(toString(tag));
+        return out;
+    }
+
+    public TagletOutput getTagletOutput(Doc holder, TagletWriter writer) throws IllegalArgumentException {
+        TagletOutput out = writer.getTagletOutputInstance();
+        Tag[] tags = holder.tags(getName());
+        if (tags.length == 0) {
+            return null;
+        }
+        out.setOutput(toString(tags[0]));
+        return out;
+    }
+//#endif
+
+    protected static final String STATUS = "<dt><b>Status:</b></dt>";
+
+    public static class ICUInternalTaglet extends ICUTaglet {
+        private static final String NAME = "internal";
+
+        public static void register(Map taglets) {
+            taglets.put(NAME, new ICUInternalTaglet());
+        }
+
+        private ICUInternalTaglet() {
+            super(NAME, MASK_DEFAULT);
+        }
+
+        public String toString(Tag tag) {
+            return STATUS + "<dd><em>Internal</em>. <font color='red'>This API is <em>ICU internal only</em>.</font></dd>";
+        }
+    }
+
+    public static class ICUDraftTaglet extends ICUTaglet {
+        private static final String NAME = "draft";
+
+        public static void register(Map taglets) {
+            taglets.put(NAME, new ICUDraftTaglet());
+        }
+
+        private ICUDraftTaglet() {
+            super(NAME, MASK_DEFAULT);
+        }
+
+        public String toString(Tag tag) {
+            String text = tag.text();
+            if (text.length() == 0) {
+                System.err.println("Warning: empty draft tag");
+            }
+            return STATUS + "<dd>Draft " + tag.text() + ".</dd>";
+        }
+    }
+
+    public static class ICUStableTaglet extends ICUTaglet {
+        private static final String NAME = "stable";
+
+        public static void register(Map taglets) {
+            taglets.put(NAME, new ICUStableTaglet());
+        }
+
+        private ICUStableTaglet() {
+            super(NAME, MASK_DEFAULT);
+        }
+
+        public String toString(Tag tag) {
+            String text = tag.text();
+            if (text.length() > 0) {
+                return STATUS + "<dd>Stable " + text + ".</dd>";
+            } else {
+                return STATUS + "<dd>Stable.</dd>";
+            }
+        }
+    }
+//#if defined(J2SE13) || defined(J2SE14)
+//##    /*
+//##     * sigh, in JDK 1.5 we can't override the standard deprecated taglet
+//##     * so easily.  I'm not impressed with the javadoc code.
+//##     */
+//##    public static class ICUDeprecatedTaglet extends ICUTaglet {
+//##        private static final String NAME = "deprecated";
+//##
+//##        public static void register(Map taglets) {
+//##            taglets.remove(NAME); // override standard deprecated taglet
+//##            taglets.put(NAME, new ICUDeprecatedTaglet());
+//##        }
+//##
+//##        private ICUDeprecatedTaglet() {
+//##            super(NAME, MASK_DEFAULT);
+//##        }
+//##
+//##        public String toString(Tag tag) {
+//##            BreakIterator bi = BreakIterator.getSentenceInstance(Locale.US);
+//##            String text = tag.text();
+//##            bi.setText(text);
+//##            int first = bi.first();
+//##            int next = bi.next();
+//##            if (first == -1 || next == -1) {
+//##                System.err.println("Warning: bad deprecated tag '" + text + "'");
+//##                return "<dd><em>Note</em>. " + text + "</dd>";
+//##            } else {
+//##                if ("This API is ICU internal only.".equals(text)) {
+//##                    return null;
+//##                }
+//##                return "<dd><em>Note, " + text.substring(first, next) + "</em>. " + text.substring(next) + "</dd>";
+//##            }
+//##        }
+//##    }
+//#endif
+
+    public static class ICUProvisionalTaglet extends ICUTaglet {
+        private static final String NAME = "provisional";
+
+        public static void register(Map taglets) {
+            taglets.remove(NAME); // override standard deprecated taglet
+            taglets.put(NAME, new ICUProvisionalTaglet());
+        }
+
+        private ICUProvisionalTaglet() {
+            super(NAME, MASK_DEFAULT);
+        }
+
+        public String toString(Tag tag) {
+            return null;
+        }
+    }
+
+    public static class ICUObsoleteTaglet extends ICUTaglet {
+        private static final String NAME = "obsolete";
+
+        public static void register(Map taglets) {
+            taglets.put(NAME, new ICUObsoleteTaglet());
+        }
+
+        private ICUObsoleteTaglet() {
+            super(NAME, MASK_DEFAULT);
+        }
+
+        public String toString(Tag tag) {
+            BreakIterator bi = BreakIterator.getSentenceInstance(Locale.US);
+            String text = tag.text();
+            bi.setText(text);
+            int first = bi.first();
+            int next = bi.next();
+            if (text.length() == 0) {
+                first = next = 0;
+            }
+            return STATUS + "<dd><em>Obsolete.</em> <font color='red'>Will be removed in " + text.substring(first, next) + "</font>. " + text.substring(next) + "</dd>";
+
+        }
+    }
+
+    public static class ICUIgnoreTaglet extends ICUTaglet {
+        private static ICUTaglet singleton;
+
+        public static void register(Map taglets) {
+            if (singleton == null) {
+                singleton = new ICUIgnoreTaglet();
+            }
+            taglets.put("bug", singleton);
+            taglets.put("test", singleton);
+            taglets.put("summary", singleton);
+        }
+
+        private ICUIgnoreTaglet() {
+            super(".ignore", MASK_DEFAULT);
+        }
+
+        public String toString(Tag tag) {
+            return null;
+        }
+    }
+}