1 /*
2  * package g1.t.m.ref is the package to define types which contain
3  * references (ref) to generic (g1) types (t) which have multiple (m) type parameters
4  */
5 package g1.t.m.ref;
6 import g1.t.m.def.Generic;
7 
8 /*
9  * This type is used to test reference to member type defined in generic type.
10  */
11 public class R4 {
12 	// Simple name
13 	public Generic.Member gen;
14 	public Generic<Object, Exception, RuntimeException>.Member gen_obj;
15 	public Generic<Exception, Exception, RuntimeException>.Member gen_exc;
16 	public Generic<?, ?, ?>.Member gen_wld;
17 	public Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member gen_thr;
18 	public Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.Member gen_run;
19 	// Qualified name
20 	public g1.t.m.def.Generic.Member qgen;
21 	public g1.t.m.def.Generic<Object, Exception, RuntimeException>.Member qgen_obj;
22 	public g1.t.m.def.Generic<Exception, Exception, RuntimeException>.Member qgen_exc;
23 	public g1.t.m.def.Generic<?, ?, ?>.Member qgen_wld;
24 	public g1.t.m.def.Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member qgen_thr;
25 	public g1.t.m.def.Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.Member qgen_run;
26 }
27