1 /* 2 * Copyright (c) 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 package pkg; 25 26 /** 27 * Test class for method signature rendering. 28 */ 29 public class C { 30 31 public interface F0<T> { 32 T apply() throws Exception; 33 } 34 35 public static class With8Types<T1, T2, T3, T4, T5, T6, T7, T8> { } 36 37 38 /** 39 * Simple method. 40 * 41 * @param i param 1 42 * @param s param 2 43 * @param b param 3 44 */ 45 public static void simpleMethod(int i, String s, boolean b) {} 46 47 48 /** 49 * Annotated method. 50 * 51 * @param i param 1 52 * @param s param 2 53 * @param b param 3 54 */ 55 @javax.annotation.processing.Generated( 56 value = "SomeGeneratedName", 57 date = "a date", 58 comments = "some comment about the method below") 59 public static void annotatedMethod(int i, String s, boolean b) {} 60 61 62 /** 63 * Generic method with eight type args. 64 * 65 * @param <T1> type 1 66 * @param <T2> type 2 67 * @param <T3> type 3 68 * @param <T4> type 4 69 * @param <T5> type 5 70 * @param <T6> type 6 71 * @param <T7> type 7 72 * @param <T8> type 8 73 * @param t1 param 1 74 * @param t2 param 2 75 * @param t3 param 3 76 * @param t4 param 4 77 * @param t5 param 5 78 * @param t6 param 6 79 * @param t7 param 7 80 * @param t8 param 8 81 * @return null 82 */ 83 public static 84 <T1 extends AutoCloseable, 85 T2 extends AutoCloseable, 86 T3 extends AutoCloseable, 87 T4 extends AutoCloseable, 88 T5 extends AutoCloseable, 89 T6 extends AutoCloseable, 90 T7 extends AutoCloseable, 91 T8 extends AutoCloseable> 92 With8Types<T1, T2, T3, T4, T5, T6, T7, T8> bigGenericMethod( 93 F0<? extends T1> t1, 94 F0<? extends T2> t2, 95 F0<? extends T3> t3, 96 F0<? extends T4> t4, 97 F0<? extends T5> t5, 98 F0<? extends T6> t6, 99 F0<? extends T7> t7, 100 F0<? extends T8> t8) 101 throws IllegalArgumentException, IllegalStateException { return null; } 102 103 104 /** 105 * Generic method with eight type args and annotation. 106 * 107 * @param <T1> type 1 108 * @param <T2> type 2 109 * @param <T3> type 3 110 * @param <T4> type 4 111 * @param <T5> type 5 112 * @param <T6> type 6 113 * @param <T7> type 7 114 * @param <T8> type 8 115 * @param t1 param 1 116 * @param t2 param 2 117 * @param t3 param 3 118 * @param t4 param 4 119 * @param t5 param 5 120 * @param t6 param 6 121 * @param t7 param 7 122 * @param t8 param 8 123 * @return null 124 */ 125 @javax.annotation.processing.Generated( 126 value = "SomeGeneratedName", 127 date = "a date", 128 comments = "some comment about the method below") 129 public static 130 <T1 extends AutoCloseable, 131 T2 extends AutoCloseable, 132 T3 extends AutoCloseable, 133 T4 extends AutoCloseable, 134 T5 extends AutoCloseable, 135 T6 extends AutoCloseable, 136 T7 extends AutoCloseable, 137 T8 extends AutoCloseable> 138 With8Types<T1, T2, T3, T4, T5, T6, T7, T8> bigGenericAnnotatedMethod( 139 F0<? extends T1> t1, 140 F0<? extends T2> t2, 141 F0<? extends T3> t3, 142 F0<? extends T4> t4, 143 F0<? extends T5> t5, 144 F0<? extends T6> t6, 145 F0<? extends T7> t7, 146 F0<? extends T8> t8) 147 throws IllegalArgumentException, IllegalStateException { return null; } 148 }