test/tools/javac/annotations/typeAnnotations/classfile/testanoninner.template

Wed, 27 Apr 2016 01:34:52 +0800

author
aoqi
date
Wed, 27 Apr 2016 01:34:52 +0800
changeset 0
959103a6100f
permissions
-rw-r--r--

Initial load
http://hg.openjdk.java.net/jdk8u/jdk8u/langtools/
changeset: 2573:53ca196be1ae
tag: jdk8u25-b17

     1 import java.lang.annotation.*;
     2 import static java.lang.annotation.RetentionPolicy.*;
     3 import static java.lang.annotation.ElementType.*;
     4 import java.util.List;
     6 class testname <T> {                 // TestN.class
     7     _As _Bs _Cs _Ds String data = "test";
     8     _As _Bs _Cs _Ds Object mtest( _As _Bs _Cs _Ds testname <T> t){ return null;  }
     9     Object mmtest( testname<T> t){ return null;  }
    11     class Inner<U> {        // TestN$1$Inner.class
    12          _As _Bs _Cs _Ds String i_odata1 = "test";
    13          _As _Bs _Cs _Ds int    i_pdata1 = 0;
    14          _As _Bs _Cs _Ds U      i_udata = null;
    15 //8015257
    16          _As _Bs _Cs _Ds Object  _As _Bs _Cs _Ds [] _As _Bs _Cs _Ds [] i_sa1 = null;
    17          _As _Bs _Cs _Ds  T    i_tdata = null;
    18          _As _Bs _Cs _Ds String i_m1(){ return null; };
    19          _As _Bs _Cs _Ds int    i_m2( _As _Bs _Cs _Ds Object o){return 0;}
    20          _As _Bs _Cs _Ds
    21         <_TAs _TBs _Cs _Ds U> Object i_um( _As _Bs _Cs _Ds  U u) { return null; }
    22     }
    23 //8015323
    24     _As _Bs _Cs _Ds Inner< _As _Bs _Cs _Ds String> IN = new  Inner< String>();
    26     public void test() {
    28         class Local1<U> {                   // TestN$Local1.class
    29             _As _Bs _Cs _Ds  String l_odata1 = "test";
    30             _As _Bs _Cs _Ds  int    l_pdata1 = 0;
    31             _As _Bs _Cs _Ds  U      l_udata = null;
    32 //8015257
    33             _As _Bs _Cs _Ds  Object _As _Bs _Cs _Ds  []_As _Bs _Cs _Ds  [] l_sa1 = null;
    34             _TAs _TBs _Cs _Ds  T    l_tdata = null;
    35             _As _Bs _Cs _Ds  String l_m1(){ return null; };
    36             _As _Bs _Cs _Ds  int    l_m2(_As _Bs _Cs _Ds  Object o){return 0;}
    37             _As _Bs _Cs _Ds 
    38             <_TAs _TBs _Cs _Ds  U> Object l_um(_As _Bs _Cs _Ds   U u) { return null; }
    39         }
    40         // The below, as a local variable, will show up on test()
    41        _As _Bs _Cs _Ds  Local1<_As _Bs _Cs _Ds  String> LC = new Local1<String>();
    43         mtest( new testname<T>() {  // TestN$1
    44                 class InnerAnon<U> {        // TestN$1$InnerAnon.class
    45                     _As _Bs _Cs _Ds  String ia_odata1 = "test";
    46                     _As _Bs _Cs _Ds  int    ia_pdata1 = 0;
    47                     _As _Bs _Cs _Ds  U      ia_udata = null;
    48 //8015257
    49                     _As _Bs _Cs _Ds  Object _As _Bs _Cs _Ds  []_As _Bs _Cs _Ds  [] ia_sa1 = null;
    50                     _TAs _TBs _Cs _Ds  T    ia_tdata = null;
    51                     _As _Bs _Cs _Ds  String ia_m1(){ return null; };
    52                     _As _Bs _Cs _Ds  int    ia_m2(_As _Bs _Cs _Ds  Object o){return 0;}
    53                     _As _Bs _Cs _Ds 
    54                     <_TAs _TBs _Cs _Ds  U> Object ia_um(_As _Bs _Cs _Ds   U u) { return null; }
    55                 }
    56 //8015257
    57                 _As _Bs _Cs _Ds  InnerAnon<_As _Bs _Cs _Ds  String> IA = new InnerAnon< String>();
    59                 _As _Bs _Cs _Ds String odata1 = "test";
    60                 _As _Bs _Cs _Ds int    pdata1 = 0;
    61 //8015257
    62                 _As _Bs _Cs _Ds Object _As _Bs _Cs _Ds []_As _Bs _Cs _Ds [] sa1 = null;
    63                 _As _Bs _Cs _Ds T tdata = null;
    65                 _As _Bs _Cs _Ds String m1(){ return null; };
    66                 _As _Bs _Cs _Ds int    m2(_As _Bs _Cs _Ds Object o){return 0;}
    68                 _As _Bs _Cs _Ds Object _As _Bs _Cs _Ds [] _As _Bs _Cs _Ds []
    69                 m3(String _As _Bs _Cs _Ds []_As _Bs _Cs _Ds [] sa){ return null; }
    71                 _As _Bs _Cs _Ds
    72                 <_TAs _TBs _Cs _Ds T> Object tm(_As _Bs _Cs _Ds  T t) { return null; }
    74                 public void atest( testname<T> t){
    75                     t.mmtest( new testname<T>() {   // TestN$1$1.class 
    76                         _As _Bs _Cs _Ds String mm_odata1 = "test";
    77                         _As _Bs _Cs _Ds int    mm_pdata1 = 0;
    78 //8015257
    79                         _As _Bs _Cs _Ds Object _As _Bs _Cs _Ds []_As _Bs _Cs _Ds [] mm_sa1 = null;
    80                         _TAs _TBs _Cs _Ds T mm_tdata = null;
    82                         _As _Bs _Cs _Ds String mm_m1(){ return null; };
    83                         _As _Bs _Cs _Ds int    mm_m2(_As _Bs _Cs _Ds Object o){return 0;}
    85                         _As _Bs _Cs _Ds String _As _Bs _Cs _Ds [] _As _Bs _Cs _Ds []
    86                         mm_m3(String _As _Bs _Cs _Ds []_As _Bs _Cs _Ds [] sa){ return null; }
    88                         _As _Bs _Cs _Ds
    89                         <_TAs _TBs _Cs _Ds T> Object mm_tm(_As _Bs _Cs _Ds  T t) { return null; }
    90                     });
    91                 }
    92            });
    93    }
    94 }
    95 @Retention(RUNTIME) @Target({TYPE_USE,FIELD})  @Repeatable( AC.class ) @interface A { }
    96 @Retention(RUNTIME) @Target({TYPE_USE,METHOD}) @Repeatable( BC.class ) @interface B { }
    97 @Retention(RUNTIME) @Target({TYPE_USE,FIELD})  @interface AC { A[] value(); }
    98 @Retention(RUNTIME) @Target({TYPE_USE,METHOD}) @interface BC { B[] value(); }
   100 @Retention(CLASS)   @Target({TYPE_USE,FIELD})  @Repeatable( CC.class ) @interface C { }
   101 @Retention(CLASS)   @Target({TYPE_USE,METHOD}) @Repeatable( DC.class ) @interface D { }
   102 @Retention(CLASS)   @Target({TYPE_USE,FIELD})  @interface CC { C[] value(); }
   103 @Retention(CLASS)   @Target({TYPE_USE,METHOD}) @interface DC { D[] value(); }
   105 @Retention(RUNTIME) @Target({TYPE_USE,TYPE_PARAMETER,FIELD})  @Repeatable( TAC.class ) @interface TA { }
   106 @Retention(RUNTIME) @Target({TYPE_USE,TYPE_PARAMETER,METHOD}) @Repeatable( TBC.class ) @interface TB { }
   107 @Retention(RUNTIME) @Target({TYPE_USE,TYPE_PARAMETER,FIELD})  @interface TAC { TA[] value(); }
   108 @Retention(RUNTIME) @Target({TYPE_USE,TYPE_PARAMETER,METHOD}) @interface TBC { TB[] value(); }

mercurial