xref: /aosp_15_r20/external/javassist/src/test/test4/Rename.java (revision f1fbf3c2ab775ce834e0af96b7a85bdc7a0eac65)
1*f1fbf3c2SXin Li package test4;
2*f1fbf3c2SXin Li 
3*f1fbf3c2SXin Li interface IRename {
foo(Rename r)4*f1fbf3c2SXin Li     Rename foo(Rename r);
5*f1fbf3c2SXin Li }
6*f1fbf3c2SXin Li 
7*f1fbf3c2SXin Li class RenameB {
foo()8*f1fbf3c2SXin Li     int foo() { return 10; }
9*f1fbf3c2SXin Li }
10*f1fbf3c2SXin Li 
11*f1fbf3c2SXin Li public class Rename implements IRename {
12*f1fbf3c2SXin Li     int value = 3;
13*f1fbf3c2SXin Li     Rename next = null;
14*f1fbf3c2SXin Li 
foo(Rename r)15*f1fbf3c2SXin Li     public Rename foo(Rename r) {
16*f1fbf3c2SXin Li         Rename k = r;
17*f1fbf3c2SXin Li         if (k == null)
18*f1fbf3c2SXin Li             return null;
19*f1fbf3c2SXin Li         else
20*f1fbf3c2SXin Li             return k.next;
21*f1fbf3c2SXin Li     }
22*f1fbf3c2SXin Li 
run()23*f1fbf3c2SXin Li     public int run() {
24*f1fbf3c2SXin Li         next = new Rename();
25*f1fbf3c2SXin Li         next.value = 4;
26*f1fbf3c2SXin Li         RenameB rb = new RenameB();
27*f1fbf3c2SXin Li         return foo(this).value + rb.foo();
28*f1fbf3c2SXin Li     }
29*f1fbf3c2SXin Li }
30*f1fbf3c2SXin Li 
31