1 /*
2  * package g3.t.ref is second package to define types which contain
3  * references (ref) to generic (g1) types (t)
4  */
5 package g4.v.ref;
6 
7 import g1.t.s.def.Generic;
8 
9 /*
10  * This type is used to test references to generic type with nested parameterized types
11  */
12 public class R3 {
simple_name( Generic<Object>.MemberGeneric<Object> gen_obj, Generic<Exception>.MemberGeneric<Exception> gen_exc, Generic<? extends Throwable>.MemberGeneric<? extends Throwable> gen_thr, Generic<? super RuntimeException>.MemberGeneric<? super RuntimeException> gen_run)13 	void simple_name(
14 		Generic<Object>.MemberGeneric<Object> gen_obj,
15 		Generic<Exception>.MemberGeneric<Exception> gen_exc,
16 		Generic<? extends Throwable>.MemberGeneric<? extends Throwable> gen_thr,
17 		Generic<? super RuntimeException>.MemberGeneric<? super RuntimeException> gen_run)
18 	{
19 		gen_obj.toString();
20 		gen_exc.toString();
21 		gen_thr.toString();
22 		gen_run.toString();
23 	}
qualified_name()24 	void qualified_name() {
25 		g1.t.s.def.Generic<Object>.MemberGeneric<Object> gen_obj = new Generic().new MemberGeneric<Object>();
26 		g1.t.s.def.Generic<Exception>.MemberGeneric<Exception> gen_exc = new Generic().new MemberGeneric<Exception>();
27 		g1.t.s.def.Generic<? extends Throwable>.MemberGeneric<? extends Throwable> gen_thr = new Generic().new MemberGeneric<Exception>();
28 		g1.t.s.def.Generic<? super RuntimeException>.MemberGeneric<? super RuntimeException> gen_run = new Generic().new MemberGeneric<Exception>();
29 
30 		gen_obj.toString();
31 		gen_exc.toString();
32 		gen_thr.toString();
33 		gen_run.toString();
34 	}
35 }
36