1 /*
   2  * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   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
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */
  23 
  24 /*
  25  * @test
  26  * @bug      8005091 8009686 8025633 8026567 6469562 8071982 8071984 8162363 8175200 8186332 8182765
  27  *           8187288
  28  * @summary  Make sure that type annotations are displayed correctly
  29  * @author   Bhavesh Patel
  30  * @library  ../../lib
  31  * @modules jdk.javadoc/jdk.javadoc.internal.tool
  32  * @build    javadoc.tester.*
  33  * @run main TestTypeAnnotations
  34  */
  35 
  36 import javadoc.tester.JavadocTester;
  37 
  38 public class TestTypeAnnotations extends JavadocTester {
  39 
  40     public static void main(String... args) throws Exception {
  41         TestTypeAnnotations tester = new TestTypeAnnotations();
  42         tester.runTests();
  43     }
  44 
  45     @Test
  46     public void test() {
  47         javadoc("-d", "out",
  48                 "-sourcepath", testSrc,
  49                 "-private",
  50                 "typeannos");
  51         checkExit(Exit.OK);
  52 
  53         // Test for type annotations on Class Extends (ClassExtends.java).
  54         checkOutput("typeannos/MyClass.html", true,
  55                 "extends <a href=\"ClassExtA.html\" title=\"annotation "
  56                 + "in typeannos\">@ClassExtA</a> <a href=\"ParameterizedClass.html\" "
  57                 + "title=\"class in typeannos\">ParameterizedClass</a>&lt;<a href=\""
  58                 + "ClassExtB.html\" title=\"annotation in typeannos\">"
  59                 + "@ClassExtB</a> java.lang.String&gt;",
  60 
  61                 "implements <a href=\"ClassExtB.html\" title=\""
  62                 + "annotation in typeannos\">@ClassExtB</a> java.lang.CharSequence, "
  63                 + "<a href=\"ClassExtA.html\" title=\"annotation in "
  64                 + "typeannos\">@ClassExtA</a> <a href=\"ParameterizedInterface.html\" "
  65                 + "title=\"interface in typeannos\">ParameterizedInterface</a>&lt;"
  66                 + "<a href=\"ClassExtB.html\" title=\"annotation in "
  67                 + "typeannos\">@ClassExtB</a> java.lang.String&gt;</pre>");
  68 
  69         checkOutput("typeannos/MyInterface.html", true,
  70                 "extends <a href=\"ClassExtA.html\" title=\"annotation "
  71                 + "in typeannos\">@ClassExtA</a> <a href=\""
  72                 + "ParameterizedInterface.html\" title=\"interface in typeannos\">"
  73                 + "ParameterizedInterface</a>&lt;<a href=\"ClassExtA.html\" "
  74                 + "title=\"annotation in typeannos\">@ClassExtA</a> java.lang.String&gt;, "
  75                 + "<a href=\"ClassExtB.html\" title=\"annotation in "
  76                 + "typeannos\">@ClassExtB</a> java.lang.CharSequence</pre>");
  77 
  78         // Test for type annotations on Class Parameters (ClassParameters.java).
  79         checkOutput("typeannos/ExtendsBound.html", true,
  80                 "class <span class=\"typeNameLabel\">ExtendsBound&lt;K extends <a "
  81                 + "href=\"ClassParamA.html\" title=\"annotation in "
  82                 + "typeannos\">@ClassParamA</a> java.lang.String&gt;</span>");
  83 
  84         checkOutput("typeannos/ExtendsGeneric.html", true,
  85                 "<pre>class <span class=\"typeNameLabel\">ExtendsGeneric&lt;K extends "
  86                 + "<a href=\"ClassParamA.html\" title=\"annotation in "
  87                 + "typeannos\">@ClassParamA</a> <a href=\"Unannotated.html\" "
  88                 + "title=\"class in typeannos\">Unannotated</a>&lt;<a href=\""
  89                 + "ClassParamB.html\" title=\"annotation in typeannos\">"
  90                 + "@ClassParamB</a> java.lang.String&gt;&gt;</span>");
  91 
  92         checkOutput("typeannos/TwoBounds.html", true,
  93                 "<pre>class <span class=\"typeNameLabel\">TwoBounds&lt;K extends <a href=\""
  94                 + "ClassParamA.html\" title=\"annotation in typeannos\">"
  95                 + "@ClassParamA</a> java.lang.String,​V extends <a href=\""
  96                 + "ClassParamB.html\" title=\"annotation in typeannos\">@ClassParamB"
  97                 + "</a> java.lang.String&gt;</span>");
  98 
  99         checkOutput("typeannos/Complex1.html", true,
 100                 "class <span class=\"typeNameLabel\">Complex1&lt;K extends <a href=\""
 101                 + "ClassParamA.html\" title=\"annotation in typeannos\">"
 102                 + "@ClassParamA</a> java.lang.String &amp; java.lang.Runnable&gt;</span>");
 103 
 104         checkOutput("typeannos/Complex2.html", true,
 105                 "class <span class=\"typeNameLabel\">Complex2&lt;K extends java.lang."
 106                 + "String &amp; <a href=\"ClassParamB.html\" title=\""
 107                 + "annotation in typeannos\">@ClassParamB</a> java.lang.Runnable&gt;</span>");
 108 
 109         checkOutput("typeannos/ComplexBoth.html", true,
 110                 "class <span class=\"typeNameLabel\">ComplexBoth&lt;K extends <a href=\""
 111                 + "ClassParamA.html\" title=\"annotation in typeannos\""
 112                 + ">@ClassParamA</a> java.lang.String &amp; <a href=\""
 113                 + "ClassParamA.html\" title=\"annotation in typeannos\">@ClassParamA"
 114                 + "</a> java.lang.Runnable&gt;</span>");
 115 
 116         // Test for type annotations on fields (Fields.java).
 117         checkOutput("typeannos/DefaultScope.html", true,
 118                 "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"Parameterized.html\" "
 119                 + "title=\"class in typeannos\">Parameterized</a>&lt;<a href=\"FldA.html\" "
 120                 + "title=\"annotation in typeannos\">@FldA</a> java.lang.String,​"
 121                 + "<a href=\"FldB.html\" title=\"annotation in typeannos\">@FldB</a> java.lang.String&gt;"
 122                 + "</span>&nbsp;<span class=\"memberName\">bothTypeArgs</span></div>",
 123 
 124                 "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"FldA.html\" "
 125                 + "title=\"annotation in typeannos\">@FldA</a> java.lang.String <a href=\"FldB.html\" "
 126                 + "title=\"annotation in typeannos\">@FldB</a> []</span>&nbsp;"
 127                 + "<span class=\"memberName\">array1Deep</span></div>",
 128 
 129                 "<div class=\"memberSignature\"><span class=\"returnType\">java.lang.String "
 130                 + "<a href=\"FldB.html\" title=\"annotation in typeannos\">@FldB</a> [][]</span>&nbsp;"
 131                 + "<span class=\"memberName\">array2SecondOld</span></div>",
 132 
 133                 // When JDK-8068737, we should change the order
 134                 "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"FldD.html\" "
 135                 + "title=\"annotation in typeannos\">@FldD</a> java.lang.String <a href=\"FldC.html\" "
 136                 + "title=\"annotation in typeannos\">@FldC</a> <a href=\"FldB.html\" "
 137                 + "title=\"annotation in typeannos\">@FldB</a> [] <a href=\"FldC.html\" "
 138                 + "title=\"annotation in typeannos\">@FldC</a> <a href=\"FldA.html\" "
 139                 + "title=\"annotation in typeannos\">@FldA</a> []</span>&nbsp;"
 140                 + "<span class=\"memberName\">array2Deep</span></div>");
 141 
 142         checkOutput("typeannos/ModifiedScoped.html", true,
 143                 "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>"
 144                 + "&nbsp;<span class=\"returnType\"><a href=\"Parameterized.html\" "
 145                 + "title=\"class in typeannos\">Parameterized</a>&lt;<a href=\"FldA.html\" "
 146                 + "title=\"annotation in typeannos\">@FldA</a> <a href=\"Parameterized.html\" "
 147                 + "title=\"class in typeannos\">Parameterized</a>&lt;<a href=\"FldA.html\" "
 148                 + "title=\"annotation in typeannos\">@FldA</a> java.lang.String,​"
 149                 + "<a href=\"FldB.html\" title=\"annotation in typeannos\">@FldB</a> "
 150                 + "java.lang.String&gt;,​<a href=\"FldB.html\" "
 151                 + "title=\"annotation in typeannos\">@FldB</a> java.lang.String&gt;"
 152                 + "</span>&nbsp;<span class=\"memberName\">nestedParameterized</span></div>",
 153 
 154                 "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>&nbsp;"
 155                 + "<span class=\"returnType\"><a href=\"FldA.html\" title=\"annotation in typeannos\">"
 156                 + "@FldA</a> java.lang.String[][]</span>&nbsp;"
 157                 + "<span class=\"memberName\">array2</span></div>");
 158 
 159         // Test for type annotations on method return types (MethodReturnType.java).
 160         checkOutput("typeannos/MtdDefaultScope.html", true,
 161                 "<div class=\"memberSignature\"><span class=\"modifiers\">public</span>"
 162                 + "&nbsp;<span class=\"typeParameters\">&lt;T&gt;</span>&nbsp;<span "
 163                 + "class=\"returnType\"><a href=\"MRtnA.html\" title=\"annotation in typeannos\">"
 164                 + "@MRtnA</a> java.lang.String</span>&nbsp;"
 165                 + "<span class=\"memberName\">method</span>()</div>",
 166 
 167                 // When JDK-8068737 is fixed, we should change the order
 168                 "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"MRtnA.html\" "
 169                 + "title=\"annotation in typeannos\">@MRtnA</a> java.lang.String <a href=\"MRtnB.html\" "
 170                 + "title=\"annotation in typeannos\">@MRtnB</a> [] <a href=\"MRtnA.html\" "
 171                 + "title=\"annotation in typeannos\">@MRtnA</a> []</span>&nbsp;<span class=\"memberName\">"
 172                 + "array2Deep</span>()</div>",
 173 
 174                 "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"MRtnA.html\" "
 175                 + "title=\"annotation in typeannos\">@MRtnA</a> java.lang.String[][]</span>&nbsp;"
 176                 + "<span class=\"memberName\">array2</span>()</div>");
 177 
 178         checkOutput("typeannos/MtdModifiedScoped.html", true,
 179                 "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>&nbsp;"
 180                 + "<span class=\"returnType\"><a href=\"MtdParameterized.html\" "
 181                 + "title=\"class in typeannos\">MtdParameterized</a>&lt;<a href=\"MRtnA.html\" "
 182                 + "title=\"annotation in typeannos\">@MRtnA</a> <a href=\"MtdParameterized.html\" "
 183                 + "title=\"class in typeannos\">MtdParameterized</a>&lt;<a href=\"MRtnA.html\" "
 184                 + "title=\"annotation in typeannos\">@MRtnA</a> java.lang.String,​"
 185                 + "<a href=\"MRtnB.html\" title=\"annotation in typeannos\">@MRtnB</a> "
 186                 + "java.lang.String&gt;,​<a href=\"MRtnB.html\" title=\"annotation in typeannos\">"
 187                 + "@MRtnB</a> java.lang.String&gt;</span>&nbsp;<span class=\"memberName\">"
 188                 + "nestedMtdParameterized</span>()</div>");
 189 
 190         // Test for type annotations on method type parameters (MethodTypeParameters.java).
 191         checkOutput("typeannos/UnscopedUnmodified.html", true,
 192                 "<div class=\"memberSignature\"><span class=\"typeParameters\">&lt;K extends "
 193                 + "<a href=\"MTyParamA.html\" title=\"annotation in typeannos\">@MTyParamA</a> "
 194                 + "java.lang.String&gt;</span>&nbsp;<span class=\"returnType\">void</span>&nbsp;"
 195                 + "<span class=\"memberName\">methodExtends</span>()</div>",
 196 
 197                 "<div class=\"memberSignature\"><span class=\"typeParametersLong\">&lt;K extends "
 198                 + "<a href=\"MTyParamA.html\" title=\"annotation in typeannos\">@MTyParamA</a> "
 199                 + "<a href=\"MtdTyParameterized.html\" title=\"class in typeannos\">MtdTyParameterized</a>"
 200                 + "&lt;<a href=\"MTyParamB.html\" title=\"annotation in typeannos\">@MTyParamB</a> "
 201                 + "java.lang.String&gt;&gt;</span>\n<span class=\"returnType\">void</span>"
 202                 + "&nbsp;<span class=\"memberName\">nestedExtends</span>()</div>");
 203 
 204         checkOutput("typeannos/PublicModifiedMethods.html", true,
 205                 "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>&nbsp;"
 206                 + "<span class=\"typeParameters\">&lt;K extends <a href=\"MTyParamA.html\" "
 207                 + "title=\"annotation in typeannos\">@MTyParamA</a> java.lang.String&gt;</span>\n"
 208                 + "<span class=\"returnType\">void</span>&nbsp;"
 209                 + "<span class=\"memberName\">methodExtends</span>()</div>",
 210 
 211                 "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>"
 212                 + "&nbsp;<span class=\"typeParametersLong\">&lt;K extends <a href=\"MTyParamA.html\" "
 213                 + "title=\"annotation in typeannos\">@MTyParamA</a> java.lang.String,​\n"
 214                 + "V extends <a href=\"MTyParamA.html\" title=\"annotation in typeannos\">"
 215                 + "@MTyParamA</a> <a href=\"MtdTyParameterized.html\" title=\"class in typeannos\">"
 216                 + "MtdTyParameterized</a>&lt;<a href=\"MTyParamB.html\" title=\"annotation in typeannos\">"
 217                 + "@MTyParamB</a> java.lang.String&gt;&gt;</span>\n<span class=\"returnType\">void</span>"
 218                 + "&nbsp;<span class=\"memberName\">dual</span>()</div>");
 219 
 220         // Test for type annotations on parameters (Parameters.java).
 221         checkOutput("typeannos/Parameters.html", true,
 222                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 223                 + "<span class=\"memberName\">unannotated</span>​(<span class=\"arguments\">"
 224                 + "<a href=\"ParaParameterized.html\" title=\"class in typeannos\">ParaParameterized</a>"
 225                 + "&lt;java.lang.String,​java.lang.String&gt;&nbsp;a)</span></div>",
 226 
 227                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 228                 + "<span class=\"memberName\">nestedParaParameterized</span>​"
 229                 + "(<span class=\"arguments\"><a href=\"ParaParameterized.html\" "
 230                 + "title=\"class in typeannos\">ParaParameterized</a>&lt;<a href=\"ParamA.html\" "
 231                 + "title=\"annotation in typeannos\">@ParamA</a> <a href=\"ParaParameterized.html\" "
 232                 + "title=\"class in typeannos\">ParaParameterized</a>&lt;<a href=\"ParamA.html\" "
 233                 + "title=\"annotation in typeannos\">@ParamA</a> java.lang.String,​"
 234                 + "<a href=\"ParamB.html\" title=\"annotation in typeannos\">@ParamB</a> "
 235                 + "java.lang.String&gt;,​<a href=\"ParamB.html\" title=\"annotation in typeannos\">"
 236                 + "@ParamB</a> java.lang.String&gt;&nbsp;a)</span></div>",
 237 
 238                 // When JDK-8068737 is fixed, we should change the order
 239                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 240                 + "<span class=\"memberName\">array2Deep</span>​(<span class=\"arguments\">"
 241                 + "<a href=\"ParamA.html\" title=\"annotation in typeannos\">@ParamA</a> "
 242                 + "java.lang.String <a href=\"ParamB.html\" title=\"annotation in typeannos\">"
 243                 + "@ParamB</a> [] <a href=\"ParamA.html\" title=\"annotation in typeannos\">"
 244                 + "@ParamA</a> []&nbsp;a)</span></div>");
 245 
 246         // Test for type annotations on throws (Throws.java).
 247         checkOutput("typeannos/ThrDefaultUnmodified.html", true,
 248                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 249                 + "<span class=\"memberName\">oneException</span>()\n"
 250                 + "           throws <span class=\"exceptions\"><a href=\"ThrA.html\" "
 251                 + "title=\"annotation in typeannos\">@ThrA</a> java.lang.Exception</span></div>",
 252 
 253                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 254                 + "<span class=\"memberName\">twoExceptions</span>()\n"
 255                 + "            throws <span class=\"exceptions\"><a href=\"ThrA.html\" "
 256                 + "title=\"annotation in typeannos\">@ThrA</a> java.lang.RuntimeException,\n"
 257                 + "<a href=\"ThrA.html\" title=\"annotation in typeannos\">@ThrA</a> "
 258                 + "java.lang.Exception</span></div>");
 259 
 260         checkOutput("typeannos/ThrPublicModified.html", true,
 261                 "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>&nbsp;"
 262                 + "<span class=\"returnType\">void</span>&nbsp;<span class=\"memberName\">"
 263                 + "oneException</span>​(<span class=\"arguments\">java.lang.String&nbsp;a)</span>\n"
 264                 + "                        throws <span class=\"exceptions\"><a href=\"ThrA.html\" "
 265                 + "title=\"annotation in typeannos\">@ThrA</a> java.lang.Exception</span></div>",
 266 
 267                 "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>&nbsp;"
 268                 + "<span class=\"returnType\">void</span>&nbsp;<span class=\"memberName\">"
 269                 + "twoExceptions</span>​(<span class=\"arguments\">java.lang.String&nbsp;a)</span>\n"
 270                 + "                         throws <span class=\"exceptions\"><a href=\"ThrA.html\" "
 271                 + "title=\"annotation in typeannos\">@ThrA</a> java.lang.RuntimeException,\n"
 272                 + "<a href=\"ThrA.html\" title=\"annotation in typeannos\">@ThrA</a> "
 273                 + "java.lang.Exception</span></div>");
 274 
 275         checkOutput("typeannos/ThrWithValue.html", true,
 276                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 277                 + "<span class=\"memberName\">oneException</span>()\n"
 278                 + "           throws <span class=\"exceptions\"><a href=\"ThrB.html\" "
 279                 + "title=\"annotation in typeannos\">@ThrB</a>(\"m\") java.lang.Exception</span></div>",
 280 
 281                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 282                 + "<span class=\"memberName\">twoExceptions</span>()\n"
 283                 + "            throws <span class=\"exceptions\"><a href=\"ThrB.html\" "
 284                 + "title=\"annotation in typeannos\">@ThrB</a>(\"m\") java.lang.RuntimeException,\n"
 285                 + "<a href=\"ThrA.html\" title=\"annotation in typeannos\">@ThrA</a> "
 286                 + "java.lang.Exception</span></div>");
 287 
 288         // Test for type annotations on type parameters (TypeParameters.java).
 289         checkOutput("typeannos/TestMethods.html", true,
 290                 "<div class=\"memberSignature\"><span class=\"typeParameters\">&lt;K,​\n"
 291                 + "<a href=\"TyParaA.html\" title=\"annotation in typeannos\">@TyParaA</a> V extends "
 292                 + "<a href=\"TyParaA.html\" title=\"annotation in typeannos\">@TyParaA</a> "
 293                 + "java.lang.String&gt;</span>\n<span class=\"returnType\">void</span>&nbsp;"
 294                 + "<span class=\"memberName\">secondAnnotated</span>()</div>"
 295         );
 296 
 297         // Test for type annotations on wildcard type (Wildcards.java).
 298         checkOutput("typeannos/BoundTest.html", true,
 299                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 300                 + "<span class=\"memberName\">wcExtends</span>​(<span class=\"arguments\">"
 301                 + "<a href=\"MyList.html\" title=\"class in typeannos\">MyList</a>&lt;? extends "
 302                 + "<a href=\"WldA.html\" title=\"annotation in typeannos\">@WldA</a> "
 303                 + "java.lang.String&gt;&nbsp;l)</span></div>",
 304 
 305                 "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"MyList.html\" "
 306                 + "title=\"class in typeannos\">MyList</a>&lt;? super <a href=\"WldA.html\" "
 307                 + "title=\"annotation in typeannos\">@WldA</a> java.lang.String&gt;</span>&nbsp;"
 308                 + "<span class=\"memberName\">returnWcSuper</span>()</div>");
 309 
 310         checkOutput("typeannos/BoundWithValue.html", true,
 311                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 312                 + "<span class=\"memberName\">wcSuper</span>​(<span class=\"arguments\">"
 313                 + "<a href=\"MyList.html\" title=\"class in typeannos\">MyList</a>&lt;? super "
 314                 + "<a href=\"WldB.html\" title=\"annotation in typeannos\">@WldB</a>(\"m\") "
 315                 + "java.lang.String&gt;&nbsp;l)</span></div>",
 316 
 317                 "<div class=\"memberSignature\"><span class=\"returnType\"><a href=\"MyList.html\" "
 318                 + "title=\"class in typeannos\">MyList</a>&lt;? extends <a href=\"WldB.html\" "
 319                 + "title=\"annotation in typeannos\">@WldB</a>(\"m\") java.lang.String&gt;</span>"
 320                 + "&nbsp;<span class=\"memberName\">returnWcExtends</span>()</div>");
 321 
 322         // Test for receiver annotations (Receivers.java).
 323         checkOutput("typeannos/DefaultUnmodified.html", true,
 324                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 325                 + "<span class=\"memberName\">withException</span>​(<span class=\"arguments\">"
 326                 + "<a href=\"RcvrA.html\" title=\"annotation in typeannos\">@RcvrA</a>"
 327                 + "&nbsp;DefaultUnmodified&nbsp;this)</span>\n"
 328                 + "            throws <span class=\"exceptions\">java.lang.Exception</span></div>",
 329 
 330                 "<div class=\"memberSignature\"><span class=\"returnType\">java.lang.String</span>&nbsp;"
 331                 + "<span class=\"memberName\">nonVoid</span>​(<span class=\"arguments\">"
 332                 + "<a href=\"RcvrA.html\" title=\"annotation in typeannos\">@RcvrA</a> "
 333                 + "<a href=\"RcvrB.html\" title=\"annotation in typeannos\">@RcvrB</a>(\"m\")"
 334                 + "&nbsp;DefaultUnmodified&nbsp;this)</span></div>",
 335 
 336                 "<div class=\"memberSignature\"><span class=\"typeParameters\">&lt;T extends "
 337                 + "java.lang.Runnable&gt;</span>&nbsp;<span class=\"returnType\">void</span>&nbsp;"
 338                 + "<span class=\"memberName\">accept</span>​(<span class=\"arguments\">"
 339                 + "<a href=\"RcvrA.html\" title=\"annotation in typeannos\">@RcvrA</a>&nbsp;"
 340                 + "DefaultUnmodified&nbsp;this,\nT&nbsp;r)</span>\n"
 341                 + "                                    throws <span class=\"exceptions\">"
 342                 + "java.lang.Exception</span></div>");
 343 
 344         checkOutput("typeannos/PublicModified.html", true,
 345                 "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>&nbsp;"
 346                 + "<span class=\"returnType\">java.lang.String</span>&nbsp;<span class=\"memberName\">"
 347                 + "nonVoid</span>​(<span class=\"arguments\"><a href=\"RcvrA.html\" "
 348                 + "title=\"annotation in typeannos\">@RcvrA</a>&nbsp;PublicModified&nbsp;this)"
 349                 + "</span></div>",
 350 
 351                 "<div class=\"memberSignature\"><span class=\"modifiers\">public final</span>&nbsp;"
 352                 + "<span class=\"typeParameters\">&lt;T extends java.lang.Runnable&gt;</span>&nbsp;"
 353                 + "<span class=\"returnType\">void</span>&nbsp;<span class=\"memberName\">accept"
 354                 + "</span>​(<span class=\"arguments\"><a href=\"RcvrA.html\" "
 355                 + "title=\"annotation in typeannos\">@RcvrA</a>&nbsp;PublicModified&nbsp;this,\n"
 356                 + "T&nbsp;r)</span>\n                                                 throws "
 357                 + "<span class=\"exceptions\">java.lang.Exception</span></div>");
 358 
 359         checkOutput("typeannos/WithValue.html", true,
 360                 "<div class=\"memberSignature\"><span class=\"typeParameters\">&lt;T extends "
 361                 + "java.lang.Runnable&gt;</span>&nbsp;<span class=\"returnType\">void</span>&nbsp;"
 362                 + "<span class=\"memberName\">accept</span>​(<span class=\"arguments\">"
 363                 + "<a href=\"RcvrB.html\" title=\"annotation in typeannos\">@RcvrB</a>(\"m\")"
 364                 + "&nbsp;WithValue&nbsp;this,\nT&nbsp;r)</span>\n"
 365                 + "                                    throws <span class=\"exceptions\">"
 366                 + "java.lang.Exception</span></div>");
 367 
 368         checkOutput("typeannos/WithFinal.html", true,
 369                 "<div class=\"memberSignature\"><span class=\"returnType\">java.lang.String</span>"
 370                 + "&nbsp;<span class=\"memberName\">nonVoid</span>​(<span class=\"arguments\">"
 371                 + "<a href=\"RcvrB.html\" title=\"annotation in typeannos\">@RcvrB</a>(\"m\") "
 372                 + "<a href=\"WithFinal.html\" title=\"class in typeannos\">WithFinal</a>"
 373                 + "&nbsp;afield)</span></div>");
 374 
 375         checkOutput("typeannos/WithBody.html", true,
 376                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 377                 + "<span class=\"memberName\">field</span>​(<span class=\"arguments\">"
 378                 + "<a href=\"RcvrA.html\" title=\"annotation in typeannos\">@RcvrA</a>"
 379                 + "&nbsp;WithBody&nbsp;this)</span></div>");
 380 
 381         checkOutput("typeannos/Generic2.html", true,
 382                 "<div class=\"memberSignature\"><span class=\"returnType\">void</span>&nbsp;"
 383                 + "<span class=\"memberName\">test2</span>​(<span class=\"arguments\">"
 384                 + "<a href=\"RcvrA.html\" title=\"annotation in typeannos\">@RcvrA</a>"
 385                 + "&nbsp;Generic2&lt;X&gt;&nbsp;this)</span></div>");
 386 
 387 
 388         // Test for repeated type annotations (RepeatedAnnotations.java).
 389         checkOutput("typeannos/RepeatingAtClassLevel.html", true,
 390                 "<pre><a href=\"RepTypeA.html\" title=\"annotation in "
 391                 + "typeannos\">@RepTypeA</a> <a href=\"RepTypeA.html\" "
 392                 + "title=\"annotation in typeannos\">@RepTypeA</a>\n<a href="
 393                 + "\"RepTypeB.html\" title=\"annotation in typeannos\">"
 394                 + "@RepTypeB</a> <a href=\"RepTypeB.html\" title="
 395                 + "\"annotation in typeannos\">@RepTypeB</a>\nclass <span class="
 396                 + "\"typeNameLabel\">RepeatingAtClassLevel</span>\nextends "
 397                 + "java.lang.Object</pre>");
 398 
 399 // @ignore 8146008
 400 //        checkOutput("typeannos/RepeatingAtClassLevel2.html", true,
 401 //                "<pre><a href=\"RepTypeUseA.html\" title=\"annotation "
 402 //                + "in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html"
 403 //                + "\" title=\"annotation in typeannos\">@RepTypeUseA</a>\n<a href="
 404 //                + "\"RepTypeUseB.html\" title=\"annotation in typeannos"
 405 //                + "\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
 406 //                + "title=\"annotation in typeannos\">@RepTypeUseB</a>\nclass <span "
 407 //                + "class=\"typeNameLabel\">RepeatingAtClassLevel2</span>\nextends "
 408 //                + "java.lang.Object</pre>");
 409 //
 410 //        checkOutput("typeannos/RepeatingAtClassLevel2.html", true,
 411 //                "<pre><a href=\"RepAllContextsA.html\" title=\"annotation"
 412 //                + " in typeannos\">@RepAllContextsA</a> <a href=\"RepAllContextsA.html"
 413 //                + "\" title=\"annotation in typeannos\">@RepAllContextsA</a>\n<a href="
 414 //                + "\"RepAllContextsB.html\" title=\"annotation in typeannos"
 415 //                + "\">@RepAllContextsB</a> <a href=\"RepAllContextsB.html"
 416 //                + "\" title=\"annotation in typeannos\">@RepAllContextsB</a>\n"
 417 //                + "class <span class=\"typeNameLabel\">RepeatingAtClassLevel3</span>\n"
 418 //                + "extends java.lang.Object</pre>");
 419 
 420         checkOutput("typeannos/RepeatingOnConstructor.html", true,
 421                 "<div class=\"memberSignature\"><span class=\"annotations\">"
 422                 + "<a href=\"RepConstructorA.html\" title=\"annotation in typeannos\">"
 423                 + "@RepConstructorA</a> <a href=\"RepConstructorA.html\" "
 424                 + "title=\"annotation in typeannos\">@RepConstructorA</a>\n"
 425                 + "<a href=\"RepConstructorB.html\" title=\"annotation in typeannos\">"
 426                 + "@RepConstructorB</a> <a href=\"RepConstructorB.html\" "
 427                 + "title=\"annotation in typeannos\">@RepConstructorB</a>\n"
 428                 + "</span><span class=\"memberName\">RepeatingOnConstructor</span>()</div>",
 429 
 430                 "<div class=\"memberSignature\"><span class=\"annotations\">"
 431                 + "<a href=\"RepConstructorA.html\" title=\"annotation in typeannos\">"
 432                 + "@RepConstructorA</a> <a href=\"RepConstructorA.html\" "
 433                 + "title=\"annotation in typeannos\">@RepConstructorA</a>\n"
 434                 + "<a href=\"RepConstructorB.html\" title=\"annotation in typeannos\">"
 435                 + "@RepConstructorB</a> <a href=\"RepConstructorB.html\" "
 436                 + "title=\"annotation in typeannos\">@RepConstructorB</a>\n"
 437                 + "</span><span class=\"memberName\">RepeatingOnConstructor</span>"
 438                 + "​(<span class=\"arguments\">int&nbsp;i,\n"
 439                 + "int&nbsp;j)</span></div>",
 440 
 441                 "<div class=\"memberSignature\"><span class=\"annotations\">"
 442                 + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">"
 443                 + "@RepAllContextsA</a> <a href=\"RepAllContextsA.html\" "
 444                 + "title=\"annotation in typeannos\">@RepAllContextsA</a>\n"
 445                 + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">"
 446                 + "@RepAllContextsB</a> <a href=\"RepAllContextsB.html\" "
 447                 + "title=\"annotation in typeannos\">@RepAllContextsB</a>\n"
 448                 + "</span><span class=\"memberName\">RepeatingOnConstructor</span>"
 449                 + "​(<span class=\"arguments\">int&nbsp;i,\n"
 450                 + "int&nbsp;j,\nint&nbsp;k)</span></div>",
 451 
 452                 "<div class=\"memberSignature\"><span class=\"memberName\">RepeatingOnConstructor</span>"
 453                 + "​(<span class=\"arguments\"><a href=\"RepParameterA.html\" "
 454                 + "title=\"annotation in typeannos\">@RepParameterA</a> "
 455                 + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
 456                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
 457                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
 458                 + "java.lang.String&nbsp;parameter,\n<a href=\"RepParameterA.html\" "
 459                 + "title=\"annotation in typeannos\">@RepParameterA</a> "
 460                 + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
 461                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
 462                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
 463                 + "java.lang.String <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 464                 + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 465                 + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 466                 + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 467                 + "@RepTypeUseB</a> ...&nbsp;vararg)</span></div>"
 468         );
 469 
 470         checkOutput("typeannos/RepeatingOnConstructor.Inner.html", true,
 471                 "<code><span class=\"memberNameLink\"><a href=\"#%3Cinit%3E(java.lang.String,"
 472                 + "java.lang.String...)\">Inner</a></span>​(java.lang.String&nbsp;parameter,\n"
 473                 + "java.lang.String <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 474                 + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 475                 + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 476                 + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 477                 + "@RepTypeUseB</a> ...&nbsp;vararg)</code>",
 478                 "Inner</span>​(<span class=\"arguments\"><a href=\"RepTypeUseA.html\" "
 479                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" "
 480                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" "
 481                 + "title=\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
 482                 + "title=\"annotation in typeannos\">@RepTypeUseB</a>&nbsp;RepeatingOnConstructor&nbsp;this,\n"
 483                 + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
 484                 + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
 485                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
 486                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
 487                 + "java.lang.String&nbsp;parameter,\n<a href=\"RepParameterA.html\" "
 488                 + "title=\"annotation in typeannos\">@RepParameterA</a> "
 489                 + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
 490                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
 491                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
 492                 + "java.lang.String <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 493                 + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 494                 + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 495                 + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 496                 + "@RepTypeUseB</a> ...&nbsp;vararg)</span>");
 497 
 498         checkOutput("typeannos/RepeatingOnField.html", true,
 499                 "<code>(package private) java.lang.Integer</code></td>\n<th class=\"colSecond\" scope=\"row\">"
 500                 + "<code><span class=\"memberNameLink\"><a href=\"#i1"
 501                 + "\">i1</a></span></code>",
 502 
 503                 "<code>(package private) <a href=\"RepTypeUseA.html\" "
 504                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\""
 505                 + "RepTypeUseA.html\" title=\"annotation in typeannos\">"
 506                 + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title="
 507                 + "\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html"
 508                 + "\" title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.Integer</code></td>\n"
 509                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href="
 510                 + "\"#i2\">i2</a></span></code>",
 511 
 512                 "<code>(package private) <a href=\"RepTypeUseA.html\" title="
 513                 + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" "
 514                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
 515                 + "\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 516                 + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title="
 517                 + "\"annotation in typeannos\">@RepTypeUseB</a> java.lang.Integer</code>"
 518                 + "</td>\n<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
 519                 + "<a href=\"#i3\">i3</a></span></code>",
 520 
 521                 "<code>(package private) <a href=\"RepAllContextsA.html\" title=\""
 522                 + "annotation in typeannos\">@RepAllContextsA</a> <a href=\"RepAllContextsA.html"
 523                 + "\" title=\"annotation in typeannos\">@RepAllContextsA</a> <a href="
 524                 + "\"RepAllContextsB.html\" title=\"annotation in typeannos\">"
 525                 + "@RepAllContextsB</a> <a href=\"RepAllContextsB.html\" title="
 526                 + "\"annotation in typeannos\">@RepAllContextsB</a> java.lang.Integer</code>"
 527                 + "</td>\n<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
 528                 + "<a href=\"#i4\">i4</a></span></code>",
 529 
 530                 "<code>(package private) java.lang.String <a href=\"RepTypeUseA.html"
 531                 + "\" title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
 532                 + "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 533                 + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title="
 534                 + "\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html"
 535                 + "\" title=\"annotation in typeannos\">@RepTypeUseB</a> [] <a href="
 536                 + "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 537                 + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title="
 538                 + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html"
 539                 + "\" title=\"annotation in typeannos\">@RepTypeUseB</a> <a href="
 540                 + "\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 541                 + "@RepTypeUseB</a> []</code></td>\n<th class=\"colSecond\" scope=\"row\"><code><span class="
 542                 + "\"memberNameLink\"><a href=\"#sa"
 543                 + "\">sa</a></span></code>",
 544 
 545                 "<div class=\"memberSignature\"><span class=\"annotations\">"
 546                 + "<a href=\"RepFieldA.html\" title=\"annotation in typeannos\">@RepFieldA</a> "
 547                 + "<a href=\"RepFieldA.html\" title=\"annotation in typeannos\">@RepFieldA</a>\n"
 548                 + "<a href=\"RepFieldB.html\" title=\"annotation in typeannos\">@RepFieldB</a> "
 549                 + "<a href=\"RepFieldB.html\" title=\"annotation in typeannos\">@RepFieldB</a>\n"
 550                 + "</span><span class=\"returnType\">java.lang.Integer</span>&nbsp;"
 551                 + "<span class=\"memberName\">i1</span></div>",
 552 
 553                 "<div class=\"memberSignature\"><span class=\"returnType\">"
 554                 + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
 555                 + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
 556                 + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
 557                 + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
 558                 + "java.lang.Integer</span>&nbsp;<span class=\"memberName\">i2</span></div>",
 559 
 560                 "<div class=\"memberSignature\"><span class=\"annotations\">"
 561                 + "<a href=\"RepFieldA.html\" title=\"annotation in typeannos\">@RepFieldA</a> "
 562                 + "<a href=\"RepFieldA.html\" title=\"annotation in typeannos\">@RepFieldA</a>\n"
 563                 + "<a href=\"RepFieldB.html\" title=\"annotation in typeannos\">@RepFieldB</a> "
 564                 + "<a href=\"RepFieldB.html\" title=\"annotation in typeannos\">@RepFieldB</a>\n"
 565                 + "</span><span class=\"returnType\"><a href=\"RepTypeUseA.html\" "
 566                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> "
 567                 + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
 568                 + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
 569                 + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
 570                 + "java.lang.Integer</span>&nbsp;<span class=\"memberName\">i3</span></div>",
 571 
 572                 "<div class=\"memberSignature\"><span class=\"annotations\">"
 573                 + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">@RepAllContextsA</a> "
 574                 + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">@RepAllContextsA</a>\n"
 575                 + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a> "
 576                 + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a>\n"
 577                 + "</span><span class=\"returnType\"><a href=\"RepAllContextsA.html\" "
 578                 + "title=\"annotation in typeannos\">@RepAllContextsA</a> "
 579                 + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">@RepAllContextsA</a> "
 580                 + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a> "
 581                 + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a> "
 582                 + "java.lang.Integer</span>&nbsp;<span class=\"memberName\">i4</span></div>",
 583 
 584                 "<div class=\"memberSignature\"><span class=\"returnType\">java.lang.String "
 585                 + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
 586                 + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
 587                 + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
 588                 + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> [] "
 589                 + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
 590                 + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
 591                 + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
 592                 + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> []"
 593                 + "</span>&nbsp;<span class=\"memberName\">sa</span></div>");
 594 
 595         checkOutput("typeannos/RepeatingOnMethod.html", true,
 596                 "<code>(package private) java.lang.String</code></td>\n<th class=\"colSecond\" scope=\"row\">"
 597                 + "<code><span class=\"memberNameLink\"><a href="
 598                 + "\"#test1()\">test1</a></span>()</code>",
 599 
 600                 "<code>(package private) <a href=\"RepTypeUseA.html\" "
 601                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
 602                 + "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 603                 + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title="
 604                 + "\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html"
 605                 + "\" title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.String</code>"
 606                 + "</td>\n<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
 607                 + "<a href=\"#test2()\">test2</a>"
 608                 + "</span>()</code>",
 609 
 610                 "<code>(package private) <a href=\"RepTypeUseA.html\" "
 611                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
 612                 + "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 613                 + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title="
 614                 + "\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
 615                 + "title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.String</code>"
 616                 + "</td>\n<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
 617                 + "<a href=\"#test3()\">test3</a>"
 618                 + "</span>()</code>",
 619 
 620                 "<code>(package private) <a href=\"RepAllContextsA.html\" "
 621                 + "title=\"annotation in typeannos\">@RepAllContextsA</a> <a href="
 622                 + "\"RepAllContextsA.html\" title=\"annotation in typeannos\">"
 623                 + "@RepAllContextsA</a> <a href=\"RepAllContextsB.html\" "
 624                 + "title=\"annotation in typeannos\">@RepAllContextsB</a> <a href="
 625                 + "\"RepAllContextsB.html\" title=\"annotation in typeannos\">"
 626                 + "@RepAllContextsB</a> java.lang.String</code></td>\n<th class=\"colSecond\" scope=\"row\">"
 627                 + "<code><span class=\"memberNameLink\"><a href=\""
 628                 + "#test4()\">test4</a></span>()</code>",
 629 
 630                 "<code><span class=\"memberNameLink\"><a href=\""
 631                 + "#test5(java.lang.String,java.lang.String...)\">test5</a></span>"
 632                 + "​(java.lang.String&nbsp;parameter,\njava.lang.String <a href="
 633                 + "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 634                 + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title="
 635                 + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html"
 636                 + "\" title=\"annotation in typeannos\">@RepTypeUseB</a> <a href="
 637                 + "\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 638                 + "@RepTypeUseB</a> ...&nbsp;vararg)</code>",
 639 
 640                 "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a> "
 641                 + "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a>\n"
 642                 + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a> "
 643                 + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a>\n"
 644                 + "</span><span class=\"returnType\">java.lang.String</span>&nbsp;"
 645                 + "<span class=\"memberName\">test1</span>()",
 646 
 647                 "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 648                 + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title="
 649                 + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" "
 650                 + "title=\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
 651                 + "title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.String</span>"
 652                 + "&nbsp;<span class=\"memberName\">test2</span>()",
 653 
 654                 "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a> "
 655                 + "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a>\n"
 656                 + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a> "
 657                 + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a>\n"
 658                 + "</span><span class=\"returnType\"><a href=\"RepTypeUseA.html\" "
 659                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" "
 660                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" "
 661                 + "title=\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
 662                 + "title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.String</span>&nbsp;"
 663                 + "<span class=\"memberName\">test3</span>()",
 664 
 665                 "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">@RepAllContextsA</a> "
 666                 + "<a href=\"RepAllContextsA.html\" title=\"annotation in typeannos\">@RepAllContextsA</a>\n"
 667                 + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a> "
 668                 + "<a href=\"RepAllContextsB.html\" title=\"annotation in typeannos\">@RepAllContextsB</a>\n"
 669                 + "</span><span class=\"returnType\"><a href=\"RepAllContextsA.html\" "
 670                 + "title=\"annotation in typeannos\">@RepAllContextsA</a> <a href=\"RepAllContextsA.html\" "
 671                 + "title=\"annotation in typeannos\">@RepAllContextsA</a> <a href=\"RepAllContextsB.html\" "
 672                 + "title=\"annotation in typeannos\">@RepAllContextsB</a> <a href=\"RepAllContextsB.html\" "
 673                 + "title=\"annotation in typeannos\">@RepAllContextsB</a> java.lang.String</span>&nbsp;"
 674                 + "<span class=\"memberName\">test4</span>()",
 675 
 676                 "java.lang.String</span>&nbsp;<span class=\"memberName\">test5</span>​("
 677                 + "<span class=\"arguments\"><a href=\"RepTypeUseA.html\" "
 678                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> "
 679                 + "<a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">@RepTypeUseA</a> "
 680                 + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a> "
 681                 + "<a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">@RepTypeUseB</a>"
 682                 + "&nbsp;RepeatingOnMethod&nbsp;this,\n"
 683                 + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
 684                 + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
 685                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
 686                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
 687                 + "java.lang.String&nbsp;parameter,\n"
 688                 + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
 689                 + "<a href=\"RepParameterA.html\" title=\"annotation in typeannos\">@RepParameterA</a> "
 690                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a> "
 691                 + "<a href=\"RepParameterB.html\" title=\"annotation in typeannos\">@RepParameterB</a>\n"
 692                 + "java.lang.String <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 693                 + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 694                 + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 695                 + "@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" title=\"annotation in typeannos\">"
 696                 + "@RepTypeUseB</a> ...&nbsp;vararg)");
 697 
 698         checkOutput("typeannos/RepeatingOnTypeParametersBoundsTypeArgumentsOnMethod.html", true,
 699                 "<code>(package private) &lt;T&gt;&nbsp;java.lang.String</code></td>\n"
 700                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href="
 701                 + "\"#"
 702                 + "genericMethod(T)\">genericMethod</a></span>​(T&nbsp;t)</code>",
 703 
 704                 "<code>(package private) &lt;T&gt;&nbsp;java.lang.String</code></td>\n"
 705                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href="
 706                 + "\"#"
 707                 + "genericMethod2(T)\">genericMethod2</a></span>​(<a href=\"RepTypeUseA.html"
 708                 + "\" title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseA.html"
 709                 + "\" title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html"
 710                 + "\" title=\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html"
 711                 + "\" title=\"annotation in typeannos\">@RepTypeUseB</a> T&nbsp;t)</code>",
 712 
 713                 "<code>(package private) java.lang.String</code></td>\n<th class=\"colSecond\" scope=\"row\"><code>"
 714                 + "<span class=\"memberNameLink\"><a href=\"#"
 715                 + "test()\">test</a></span>()</code>",
 716 
 717                 "<span class=\"returnType\">java.lang.String</span>&nbsp;"
 718                 + "<span class=\"memberName\">test</span>"
 719                 + "​(<span class=\"arguments\"><a href=\"RepTypeUseA.html\" "
 720                 + "title=\"annotation in typeannos\">@RepTypeUseA</a> <a href="
 721                 + "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 722                 + "@RepTypeUseA</a> <a href=\"RepTypeUseB.html\" title="
 723                 + "\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
 724                 + "title=\"annotation in typeannos\">@RepTypeUseB</a>&nbsp;"
 725                 + "RepeatingOnTypeParametersBoundsTypeArgumentsOnMethod&lt;<a href="
 726                 + "\"RepTypeUseA.html\" title=\"annotation in typeannos\">"
 727                 + "@RepTypeUseA</a> <a href=\"RepTypeUseA.html\" title="
 728                 + "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"RepTypeUseB.html"
 729                 + "\" title=\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"RepTypeUseB.html\" "
 730                 + "title=\"annotation in typeannos\">@RepTypeUseB</a> T&gt;&nbsp;this)");
 731 
 732         checkOutput("typeannos/RepeatingOnVoidMethodDeclaration.html", true,
 733                 "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a> "
 734                 + "<a href=\"RepMethodA.html\" title=\"annotation in typeannos\">@RepMethodA</a>\n"
 735                 + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a> "
 736                 + "<a href=\"RepMethodB.html\" title=\"annotation in typeannos\">@RepMethodB</a>\n"
 737                 + "</span><span class=\"returnType\">void</span>&nbsp;"
 738                 + "<span class=\"memberName\">test</span>()");
 739     }
 740 }