Uploaded image for project: 'Code Tools'
  1. Code Tools
  2. CODETOOLS-4704463

Improve javadoc parser in Setup

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Won't Fix
    • Icon: P4 P4
    • st1.3
    • None
    • tools
    • None
    • generic
    • generic

      Name: siR10004 Date: 06/19/2002


      The javadoc parser in sigtest Setup uses value of NAME attribute
      in <A> tag to extract the signatures of constructors/methods.
      However, this value doesn't always coincide with the signature
      in question.

      See, for example, the following fragment from javadoc file
      (generated by Javadoc from JDK 1.3) describing default constructor
      of inner class java.applet.Applet.AccessibleApplet :

      -------- doc/api/java/applet/Applet.AccessibleApplet.html -------
      <A NAME="Applet.AccessibleApplet(java.applet.Applet)"><!-- --></A>
      <H3>Applet.AccessibleApplet</H3>
      <PRE>protected <B>Applet.AccessibleApplet</B>()</PRE>
      -----------------------------------------------------------------

      Its obvious that <PRE> ... </PRE> element should be used instead
      of <A> tag, because it is what any browsers would show on user's
      screen as a constructor/method signature. The <A> tag is intended for
      other purposes. Besides, in this particular case its NAME attribute
      has wrong value.

      Moreover, Javadoc from JDK 1.4 generates slightly different files
      in which value of NAME attribute coincides with signature.
      So the result of parsing javadoc files generated for the same API
      by different versions of Javadoc tool is different.

      To workaround this problem, -JavaDocHideCtorArg command line option
      was introduced. This option can be removed and javadoc parsing made
      less sensitive to differences in javadoc files syntax if <PRE>
      elements are parsed.

      Javadoc parsing is implemented directly using methods of classes
      String and StringTokenizer without any library for dealing with
      html tags and attributes. With such approach parsing <PRE> elements
      is a quite difficult task.

      To simplify this task, package javax.swing.text.html.parser can
      be used. With this package all procedures for scanning html tags
      and attributes can be removed from javadoc parser.

      ======================================================================

            ersh Mikhail Ershov (Inactive)
            duke J. Duke
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: