langtools/test/jdk/javadoc/doclet/testNewLanguageFeatures/TestNewLanguageFeatures.java
changeset 44297 e03f5fb3714b
parent 41157 b235a429089a
equal deleted inserted replaced
44296:e9bbaeab6f49 44297:e03f5fb3714b
     1 /*
     1 /*
     2  * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
    22  */
    22  */
    23 
    23 
    24 /*
    24 /*
    25  * @test
    25  * @test
    26  * @bug      4789689 4905985 4927164 4827184 4993906 5004549 7025314 7010344 8025633 8026567 8162363
    26  * @bug      4789689 4905985 4927164 4827184 4993906 5004549 7025314 7010344 8025633 8026567 8162363
       
    27  *           8175200
    27  * @summary  Run Javadoc on a set of source files that demonstrate new
    28  * @summary  Run Javadoc on a set of source files that demonstrate new
    28  *           language features.  Check the output to ensure that the new
    29  *           language features.  Check the output to ensure that the new
    29  *           language features are properly documented.
    30  *           language features are properly documented.
    30  * @author   jamieh
    31  * @author   jamieh
    31  * @library  ../lib
    32  * @library  ../lib
    78                 "Returns the enum constant of this type with the specified name",
    79                 "Returns the enum constant of this type with the specified name",
    79                 "for (Coin c : Coin.values())",
    80                 "for (Coin c : Coin.values())",
    80                 "Overloaded valueOf() method has correct documentation.",
    81                 "Overloaded valueOf() method has correct documentation.",
    81                 "Overloaded values method  has correct documentation.",
    82                 "Overloaded values method  has correct documentation.",
    82                 "<pre>public static&nbsp;<a href=\"../pkg/Coin.html\" title=\"enum in pkg\">Coin</a>" +
    83                 "<pre>public static&nbsp;<a href=\"../pkg/Coin.html\" title=\"enum in pkg\">Coin</a>" +
    83                 "&nbsp;valueOf(java.lang.String&nbsp;name)</pre>\n" +
    84                 "&nbsp;valueOf&#8203;(java.lang.String&nbsp;name)</pre>\n" +
    84                 "<div class=\"block\">Returns the enum constant of this type with the specified name.\n" +
    85                 "<div class=\"block\">Returns the enum constant of this type with the specified name.\n" +
    85                 "The string must match <i>exactly</i> an identifier used to declare an\n" +
    86                 "The string must match <i>exactly</i> an identifier used to declare an\n" +
    86                 "enum constant in this type.  (Extraneous whitespace characters are \n" +
    87                 "enum constant in this type.  (Extraneous whitespace characters are \n" +
    87                 "not permitted.)</div>\n" +
    88                 "not permitted.)</div>\n" +
    88                 "<dl>\n" +
    89                 "<dl>\n" +
   134                 // Method that returns TypeParameters
   135                 // Method that returns TypeParameters
   135                 "<td class=\"colFirst\"><code><a href=\"../pkg/TypeParameters.html\" "
   136                 "<td class=\"colFirst\"><code><a href=\"../pkg/TypeParameters.html\" "
   136                 + "title=\"type parameter in TypeParameters\">E</a>[]</code></td>\n"
   137                 + "title=\"type parameter in TypeParameters\">E</a>[]</code></td>\n"
   137                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
   138                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
   138                 + "<a href=\"../pkg/TypeParameters.html#methodThatReturnsTypeParameterA-E:A-\">"
   139                 + "<a href=\"../pkg/TypeParameters.html#methodThatReturnsTypeParameterA-E:A-\">"
   139                 + "methodThatReturnsTypeParameterA</a></span>(<a href=\"../pkg/TypeParameters.html\" "
   140                 + "methodThatReturnsTypeParameterA</a></span>&#8203;(<a href=\"../pkg/TypeParameters.html\" "
   140                 + "title=\"type parameter in TypeParameters\">E</a>[]&nbsp;e)</code>",
   141                 + "title=\"type parameter in TypeParameters\">E</a>[]&nbsp;e)</code>",
   141                 "<pre>public&nbsp;<a href=\"../pkg/TypeParameters.html\" "
   142                 "<pre>public&nbsp;<a href=\"../pkg/TypeParameters.html\" "
   142                 + "title=\"type parameter in TypeParameters\">E</a>[]&nbsp;"
   143                 + "title=\"type parameter in TypeParameters\">E</a>[]&nbsp;"
   143                 + "methodThatReturnsTypeParameterA(<a href=\"../pkg/TypeParameters.html\" "
   144                 + "methodThatReturnsTypeParameterA&#8203;(<a href=\"../pkg/TypeParameters.html\" "
   144                 + "title=\"type parameter in TypeParameters\">E</a>[]&nbsp;e)</pre>\n",
   145                 + "title=\"type parameter in TypeParameters\">E</a>[]&nbsp;e)</pre>\n",
   145                 "<td class=\"colFirst\"><code>&lt;T extends java.lang.Object &amp; java.lang.Comparable&lt;? super T&gt;&gt;"
   146                 "<td class=\"colFirst\"><code>&lt;T extends java.lang.Object &amp; java.lang.Comparable&lt;? super T&gt;&gt;"
   146                 + "<br>T</code></td>\n"
   147                 + "<br>T</code></td>\n"
   147                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
   148                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
   148                 + "<a href=\"../pkg/TypeParameters.html#methodtThatReturnsTypeParametersB-java.util.Collection-\">"
   149                 + "<a href=\"../pkg/TypeParameters.html#methodtThatReturnsTypeParametersB-java.util.Collection-\">"
   149                 + "methodtThatReturnsTypeParametersB</a></span>(java.util.Collection&lt;? extends T&gt;&nbsp;coll)</code>",
   150                 + "methodtThatReturnsTypeParametersB</a></span>&#8203;(java.util.Collection&lt;? extends T&gt;&nbsp;coll)</code>",
   150                 "<div class=\"block\">Returns TypeParameters</div>\n",
   151                 "<div class=\"block\">Returns TypeParameters</div>\n",
   151                 // Method takes a TypeVariable
   152                 // Method takes a TypeVariable
   152                 "<td class=\"colFirst\"><code>&lt;X extends java.lang.Throwable&gt;<br>"
   153                 "<td class=\"colFirst\"><code>&lt;X extends java.lang.Throwable&gt;<br>"
   153                 + "<a href=\"../pkg/TypeParameters.html\" title=\"type parameter in TypeParameters\">E</a>"
   154                 + "<a href=\"../pkg/TypeParameters.html\" title=\"type parameter in TypeParameters\">E</a>"
   154                 + "</code></td>\n"
   155                 + "</code></td>\n"
   155                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
   156                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
   156                 + "<a href=\"../pkg/TypeParameters.html#orElseThrow-java.util.function.Supplier-\">"
   157                 + "<a href=\"../pkg/TypeParameters.html#orElseThrow-java.util.function.Supplier-\">"
   157                 + "orElseThrow</a></span>(java.util.function.Supplier&lt;? extends X&gt;&nbsp;exceptionSupplier)</code>"
   158                 + "orElseThrow</a></span>&#8203;(java.util.function.Supplier&lt;? extends X&gt;&nbsp;exceptionSupplier)</code>"
   158                 );
   159                 );
   159 
   160 
   160         checkOutput("pkg/Wildcards.html", true,
   161         checkOutput("pkg/Wildcards.html", true,
   161                 // Wildcard testing.
   162                 // Wildcard testing.
   162                 "<a href=\"../pkg/TypeParameters.html\" title=\"class in pkg\">"
   163                 "<a href=\"../pkg/TypeParameters.html\" title=\"class in pkg\">"
   206 
   207 
   207         //==============================================================
   208         //==============================================================
   208         // Handle multiple bounds.
   209         // Handle multiple bounds.
   209         //==============================================================
   210         //==============================================================
   210         checkOutput("pkg/MultiTypeParameters.html", true,
   211         checkOutput("pkg/MultiTypeParameters.html", true,
   211                 "public&nbsp;&lt;T extends java.lang.Number &amp; java.lang.Runnable&gt;&nbsp;T&nbsp;foo(T&nbsp;t)");
   212                 "public&nbsp;&lt;T extends java.lang.Number &amp; java.lang.Runnable&gt;&nbsp;T&nbsp;foo&#8203;(T&nbsp;t)");
   212 
   213 
   213         //==============================================================
   214         //==============================================================
   214         // Test Class-Use Documentation for Type Parameters.
   215         // Test Class-Use Documentation for Type Parameters.
   215         //==============================================================
   216         //==============================================================
   216         // ClassUseTest1: <T extends Foo & Foo2>
   217         // ClassUseTest1: <T extends Foo & Foo2>
   229                 + "type <a href=\"../../pkg2/Foo.html\" title=\"class in "
   230                 + "type <a href=\"../../pkg2/Foo.html\" title=\"class in "
   230                 + "pkg2\">Foo</a></span><span class=\"tabEnd\">&nbsp;</span></caption>",
   231                 + "pkg2\">Foo</a></span><span class=\"tabEnd\">&nbsp;</span></caption>",
   231                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest1."
   232                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest1."
   232                 + "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/"
   233                 + "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/"
   233                 + "ClassUseTest1.html#method-T-\">method</a></span>"
   234                 + "ClassUseTest1.html#method-T-\">method</a></span>"
   234                 + "(T&nbsp;t)</code></th>",
   235                 + "&#8203;(T&nbsp;t)</code></th>",
   235                 "<caption><span>Fields in <a href=\"../../pkg2/"
   236                 "<caption><span>Fields in <a href=\"../../pkg2/"
   236                 + "package-summary.html\">pkg2</a> with type parameters of "
   237                 + "package-summary.html\">pkg2</a> with type parameters of "
   237                 + "type <a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">"
   238                 + "type <a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">"
   238                 + "Foo</a></span><span class=\"tabEnd\">&nbsp;</span></caption>",
   239                 + "Foo</a></span><span class=\"tabEnd\">&nbsp;</span></caption>",
   239                 "td class=\"colFirst\"><code><a href=\"../../pkg2/"
   240                 "td class=\"colFirst\"><code><a href=\"../../pkg2/"
   270                 + "in pkg2\">Foo2</a></span><span class=\"tabEnd\">&nbsp;"
   271                 + "in pkg2\">Foo2</a></span><span class=\"tabEnd\">&nbsp;"
   271                 + "</span></caption>",
   272                 + "</span></caption>",
   272                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">"
   273                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">"
   273                 + "ClassUseTest1.</span><code><span class=\"memberNameLink\"><a href=\"../../"
   274                 + "ClassUseTest1.</span><code><span class=\"memberNameLink\"><a href=\"../../"
   274                 + "pkg2/ClassUseTest1.html#method-T-\">method</a></span>"
   275                 + "pkg2/ClassUseTest1.html#method-T-\">method</a></span>"
   275                 + "(T&nbsp;t)</code></th>"
   276                 + "&#8203;(T&nbsp;t)</code></th>"
   276         );
   277         );
   277 
   278 
   278         // ClassUseTest2: <T extends ParamTest<Foo3>>
   279         // ClassUseTest2: <T extends ParamTest<Foo3>>
   279         checkOutput("pkg2/class-use/ParamTest.html", true,
   280         checkOutput("pkg2/class-use/ParamTest.html", true,
   280                 "<caption><span>Classes in <a href=\"../../pkg2/"
   281                 "<caption><span>Classes in <a href=\"../../pkg2/"
   293                 + "in pkg2\">ParamTest</a></span><span class=\"tabEnd\">"
   294                 + "in pkg2\">ParamTest</a></span><span class=\"tabEnd\">"
   294                 + "&nbsp;</span></caption>",
   295                 + "&nbsp;</span></caption>",
   295                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest2."
   296                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest2."
   296                 + "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/"
   297                 + "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/"
   297                 + "ClassUseTest2.html#method-T-\">method</a></span>"
   298                 + "ClassUseTest2.html#method-T-\">method</a></span>"
   298                 + "(T&nbsp;t)</code></th>",
   299                 + "&#8203;(T&nbsp;t)</code></th>",
   299                 "<caption><span>Fields in <a href=\"../../pkg2/"
   300                 "<caption><span>Fields in <a href=\"../../pkg2/"
   300                 + "package-summary.html\">pkg2</a> declared as <a href=\"../"
   301                 + "package-summary.html\">pkg2</a> declared as <a href=\"../"
   301                 + "../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest"
   302                 + "../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest"
   302                 + "</a></span><span class=\"tabEnd\">&nbsp;</span></caption>",
   303                 + "</a></span><span class=\"tabEnd\">&nbsp;</span></caption>",
   303                 "<td class=\"colFirst\"><code><a href=\"../../pkg2/"
   304                 "<td class=\"colFirst\"><code><a href=\"../../pkg2/"
   334                 + "pkg2\">Foo3</a></span><span class=\"tabEnd\">&nbsp;"
   335                 + "pkg2\">Foo3</a></span><span class=\"tabEnd\">&nbsp;"
   335                 + "</span></caption>",
   336                 + "</span></caption>",
   336                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest2."
   337                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest2."
   337                 + "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/"
   338                 + "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/"
   338                 + "ClassUseTest2.html#method-T-\">method</a></span>"
   339                 + "ClassUseTest2.html#method-T-\">method</a></span>"
   339                 + "(T&nbsp;t)</code></th>",
   340                 + "&#8203;(T&nbsp;t)</code></th>",
   340                 "<caption><span>Methods in <a href=\"../../pkg2/"
   341                 "<caption><span>Methods in <a href=\"../../pkg2/"
   341                 + "package-summary.html\">pkg2</a> that return types with "
   342                 + "package-summary.html\">pkg2</a> that return types with "
   342                 + "arguments of type <a href=\"../../pkg2/Foo3.html\" title"
   343                 + "arguments of type <a href=\"../../pkg2/Foo3.html\" title"
   343                 + "=\"class in pkg2\">Foo3</a></span><span class=\"tabEnd\">"
   344                 + "=\"class in pkg2\">Foo3</a></span><span class=\"tabEnd\">"
   344                 + "&nbsp;</span></caption>",
   345                 + "&nbsp;</span></caption>",
   368                 + "type <a href=\"../../pkg2/ParamTest2.html\" title=\"class "
   369                 + "type <a href=\"../../pkg2/ParamTest2.html\" title=\"class "
   369                 + "in pkg2\">ParamTest2</a></span><span class=\"tabEnd\">"
   370                 + "in pkg2\">ParamTest2</a></span><span class=\"tabEnd\">"
   370                 + "&nbsp;</span></caption>",
   371                 + "&nbsp;</span></caption>",
   371                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest3"
   372                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest3"
   372                 + ".</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3."
   373                 + ".</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3."
   373                 + "html#method-T-\">method</a></span>(T&nbsp;t)</code></th>",
   374                 + "html#method-T-\">method</a></span>&#8203;(T&nbsp;t)</code></th>",
   374                 "<td class=\"colFirst\"><code>&lt;T extends <a href=\"../"
   375                 "<td class=\"colFirst\"><code>&lt;T extends <a href=\"../"
   375                 + "../pkg2/ParamTest2.html\" title=\"class in pkg2\">"
   376                 + "../pkg2/ParamTest2.html\" title=\"class in pkg2\">"
   376                 + "ParamTest2</a>&lt;java.util.List&lt;? extends <a href=\".."
   377                 + "ParamTest2</a>&lt;java.util.List&lt;? extends <a href=\".."
   377                 + "/../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</a>&gt;"
   378                 + "/../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</a>&gt;"
   378                 + "&gt;&gt;<br><a href=\"../../pkg2/ParamTest2.html\" "
   379                 + "&gt;&gt;<br><a href=\"../../pkg2/ParamTest2.html\" "
   397                 + "package-summary.html\">pkg2</a> with type parameters of "
   398                 + "package-summary.html\">pkg2</a> with type parameters of "
   398                 + "type <a href=\"../../pkg2/Foo4.html\" title=\"class in "
   399                 + "type <a href=\"../../pkg2/Foo4.html\" title=\"class in "
   399                 + "pkg2\">Foo4</a></span><span class=\"tabEnd\">&nbsp;</span></caption>",
   400                 + "pkg2\">Foo4</a></span><span class=\"tabEnd\">&nbsp;</span></caption>",
   400                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest3."
   401                 "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest3."
   401                 + "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3."
   402                 + "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3."
   402                 + "html#method-T-\">method</a></span>(T&nbsp;t)</code>"
   403                 + "html#method-T-\">method</a></span>&#8203;(T&nbsp;t)</code>"
   403                 + "</th>",
   404                 + "</th>",
   404                 "<caption><span>Methods in <a href=\"../../pkg2/"
   405                 "<caption><span>Methods in <a href=\"../../pkg2/"
   405                 + "package-summary.html\">pkg2</a> that return types with "
   406                 + "package-summary.html\">pkg2</a> that return types with "
   406                 + "arguments of type <a href=\"../../pkg2/Foo4.html\" "
   407                 + "arguments of type <a href=\"../../pkg2/Foo4.html\" "
   407                 + "title=\"class in pkg2\">Foo4</a></span><span class=\""
   408                 + "title=\"class in pkg2\">Foo4</a></span><span class=\""
   431                 + "<tbody>\n"
   432                 + "<tbody>\n"
   432                 + "<tr class=\"altColor\">\n"
   433                 + "<tr class=\"altColor\">\n"
   433                 + "<td class=\"colFirst\"><code>void</code></td>\n"
   434                 + "<td class=\"colFirst\"><code>void</code></td>\n"
   434                 + "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest3."
   435                 + "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest3."
   435                 + "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3."
   436                 + "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3."
   436                 + "html#method-java.util.Set-\">method</a></span>(java."
   437                 + "html#method-java.util.Set-\">method</a></span>&#8203;(java."
   437                 + "util.Set&lt;<a href=\"../../pkg2/Foo4.html\" title=\""
   438                 + "util.Set&lt;<a href=\"../../pkg2/Foo4.html\" title=\""
   438                 + "class in pkg2\">Foo4</a>&gt;&nbsp;p)</code></th>",
   439                 + "class in pkg2\">Foo4</a>&gt;&nbsp;p)</code></th>",
   439                 "<caption><span>Constructor parameters in <a href=\"../../"
   440                 "<caption><span>Constructor parameters in <a href=\"../../"
   440                 + "pkg2/package-summary.html\">pkg2</a> with type arguments "
   441                 + "pkg2/package-summary.html\">pkg2</a> with type arguments "
   441                 + "of type <a href=\"../../pkg2/Foo4.html\" title=\"class in "
   442                 + "of type <a href=\"../../pkg2/Foo4.html\" title=\"class in "
   546                 + "title=\"annotation in pkg\">@AnnotationType</a>("
   547                 + "title=\"annotation in pkg\">@AnnotationType</a>("
   547                 + "<a href=\"../pkg/AnnotationType.html#optional--\">optional</a>"
   548                 + "<a href=\"../pkg/AnnotationType.html#optional--\">optional</a>"
   548                 + "=\"Constructor Annotation\",\n"
   549                 + "=\"Constructor Annotation\",\n"
   549                 + "                <a href=\"../pkg/AnnotationType.html#required--\">"
   550                 + "                <a href=\"../pkg/AnnotationType.html#required--\">"
   550                 + "required</a>=1994)\n"
   551                 + "required</a>=1994)\n"
   551                 + "public&nbsp;AnnotationTypeUsage()</pre>",
   552                 + "public&nbsp;AnnotationTypeUsage&#8203;()</pre>",
   552                 // METHOD
   553                 // METHOD
   553                 "<pre><a href=\"../pkg/AnnotationType.html\" "
   554                 "<pre><a href=\"../pkg/AnnotationType.html\" "
   554                 + "title=\"annotation in pkg\">@AnnotationType</a>("
   555                 + "title=\"annotation in pkg\">@AnnotationType</a>("
   555                 + "<a href=\"../pkg/AnnotationType.html#optional--\">optional</a>"
   556                 + "<a href=\"../pkg/AnnotationType.html#optional--\">optional</a>"
   556                 + "=\"Method Annotation\",\n"
   557                 + "=\"Method Annotation\",\n"
   557                 + "                <a href=\"../pkg/AnnotationType.html#required--\">"
   558                 + "                <a href=\"../pkg/AnnotationType.html#required--\">"
   558                 + "required</a>=1994)\n"
   559                 + "required</a>=1994)\n"
   559                 + "public&nbsp;void&nbsp;method()</pre>",
   560                 + "public&nbsp;void&nbsp;method&#8203;()</pre>",
   560                 // METHOD PARAMS
   561                 // METHOD PARAMS
   561                 "<pre>public&nbsp;void&nbsp;methodWithParams("
   562                 "<pre>public&nbsp;void&nbsp;methodWithParams&#8203;("
   562                 + "<a href=\"../pkg/AnnotationType.html\" title=\"annotation in pkg\">"
   563                 + "<a href=\"../pkg/AnnotationType.html\" title=\"annotation in pkg\">"
   563                 + "@AnnotationType</a>(<a href=\"../pkg/AnnotationType.html#optional--\">"
   564                 + "@AnnotationType</a>(<a href=\"../pkg/AnnotationType.html#optional--\">"
   564                 + "optional</a>=\"Parameter Annotation\",<a "
   565                 + "optional</a>=\"Parameter Annotation\",<a "
   565                 + "href=\"../pkg/AnnotationType.html#required--\">required</a>=1994)\n"
   566                 + "href=\"../pkg/AnnotationType.html#required--\">required</a>=1994)\n"
   566                 + "                             int&nbsp;documented,\n"
   567                 + "                             int&nbsp;documented,\n"
   567                 + "                             int&nbsp;undocmented)</pre>",
   568                 + "                             int&nbsp;undocmented)</pre>",
   568                 // CONSTRUCTOR PARAMS
   569                 // CONSTRUCTOR PARAMS
   569                 "<pre>public&nbsp;AnnotationTypeUsage(<a "
   570                 "<pre>public&nbsp;AnnotationTypeUsage&#8203;(<a "
   570                 + "href=\"../pkg/AnnotationType.html\" title=\"annotation in pkg\">"
   571                 + "href=\"../pkg/AnnotationType.html\" title=\"annotation in pkg\">"
   571                 + "@AnnotationType</a>(<a href=\"../pkg/AnnotationType.html#optional--\">"
   572                 + "@AnnotationType</a>(<a href=\"../pkg/AnnotationType.html#optional--\">"
   572                 + "optional</a>=\"Constructor Param Annotation\",<a "
   573                 + "optional</a>=\"Constructor Param Annotation\",<a "
   573                 + "href=\"../pkg/AnnotationType.html#required--\">required</a>=1994)\n"
   574                 + "href=\"../pkg/AnnotationType.html#required--\">required</a>=1994)\n"
   574                 + "                           int&nbsp;documented,\n"
   575                 + "                           int&nbsp;documented,\n"
   627                 + "                <a href=\"../pkg/AnnotationType.html#required\">required</a>=1994)\n"
   628                 + "                <a href=\"../pkg/AnnotationType.html#required\">required</a>=1994)\n"
   628                 + "public int <span class=\"memberNameLabel\">field</span>",
   629                 + "public int <span class=\"memberNameLabel\">field</span>",
   629                 // CONSTRUCTOR
   630                 // CONSTRUCTOR
   630                 "<a href=\"../pkg/AnnotationTypeUndocumented.html\" title=\"annotation in pkg\">@AnnotationTypeUndocumented</a>(<a href=\"../pkg/AnnotationType.html#optional\">optional</a>=\"Constructor Annotation\",\n"
   631                 "<a href=\"../pkg/AnnotationTypeUndocumented.html\" title=\"annotation in pkg\">@AnnotationTypeUndocumented</a>(<a href=\"../pkg/AnnotationType.html#optional\">optional</a>=\"Constructor Annotation\",\n"
   631                 + "                <a href=\"../pkg/AnnotationType.html#required\">required</a>=1994)\n"
   632                 + "                <a href=\"../pkg/AnnotationType.html#required\">required</a>=1994)\n"
   632                 + "public <span class=\"typeNameLabel\">AnnotationTypeUsage</span>()",
   633                 + "public <span class=\"typeNameLabel\">AnnotationTypeUsage</span>&#8203;()",
   633                 // METHOD
   634                 // METHOD
   634                 "<a href=\"../pkg/AnnotationTypeUndocumented.html\" title=\"annotation in pkg\">@AnnotationTypeUndocumented</a>(<a href=\"../pkg/AnnotationType.html#optional\">optional</a>=\"Method Annotation\",\n"
   635                 "<a href=\"../pkg/AnnotationTypeUndocumented.html\" title=\"annotation in pkg\">@AnnotationTypeUndocumented</a>(<a href=\"../pkg/AnnotationType.html#optional\">optional</a>=\"Method Annotation\",\n"
   635                 + "                <a href=\"../pkg/AnnotationType.html#required\">required</a>=1994)\n"
   636                 + "                <a href=\"../pkg/AnnotationType.html#required\">required</a>=1994)\n"
   636                 + "public void <span class=\"memberNameLabel\">method</span>()");
   637                 + "public void <span class=\"memberNameLabel\">method</span>&#8203;()");
   637 
   638 
   638         //=================================
   639         //=================================
   639         // Make sure annotation types do not
   640         // Make sure annotation types do not
   640         // trigger this warning.
   641         // trigger this warning.
   641         //=================================
   642         //=================================