baksmali_test_class.smali revision 5867263eb588f4671400895d1e6b01c01535061b
1.class public Lbaksmali/test/class;
2.super Ljava/lang/Object;
3
4.source "baksmali_test_class.smali"
5
6.implements Lsome/interface;
7.implements Lsome/other/interface;
8
9
10.annotation build Lsome/annotation;
11    value1 = "test"
12    value2 = .subannotation Lsome/annotation;
13        value1 = "test2"
14        value2 = Lsome/enum;
15    .end subannotation
16.end annotation
17
18.annotation system Lsome/annotation;
19.end annotation
20
21
22
23.field public static aStaticFieldWithoutAnInitializer:I
24
25.field public static longStaticField:J = 0x300000000L
26.field public static longNegStaticField:J = -0x300000000L
27
28.field public static intStaticField:I = 0x70000000
29.field public static intNegStaticField:I = -500
30
31.field public static shortStaticField:S = 500s
32.field public static shortNegStaticField:S = -500s
33
34.field public static byteStaticField:B = 123t
35.field public static byteNegStaticField:B = 0xAAt
36
37.field public static floatStaticField:F = 3.1415926f
38
39.field public static doubleStaticField:D = 3.141592653589793
40
41.field public static charStaticField:C = 'a'
42.field public static charEscapedStaticField:C = '\n'
43
44.field public static boolTrueStaticField:Z = true
45.field public static boolFalseStaticField:Z = false
46
47.field public static typeStaticField:Ljava/lang/Class; = Lbaksmali/test/class;
48
49.field public static stringStaticField:Ljava/lang/String; = "test"
50.field public static stringEscapedStaticField:Ljava/lang/String; = "test\ntest"
51
52
53.field public static fieldStaticField:Ljava/lang/reflect/Field; = Lbaksmali/test/class;->fieldStaticField:Ljava/lang/reflect/Field;
54
55.field public static methodStaticField:Ljava/lang/reflect/Method; = Lbaksmali/test/class;->teshMethod(ILjava/lang/String;)Ljava/lang/String;
56
57.field public static arrayStaticField:[I = {1, 2, 3, {1, 2, 3, 4}}
58
59.field public static enumStaticField:Lsome/enum; = .enum Lsome/enum;->someEnumValue:Lsome/enum;
60
61.field public static annotationStaticField:Lsome/annotation; = .subannotation Lsome/annotation;
62    value1 = "test"
63    value2 = .subannotation Lsome/annotation;
64        value1 = "test2"
65        value2 = Lsome/enum;
66    .end subannotation
67.end subannotation
68
69.field public static staticFieldWithAnnotation:I
70    .annotation runtime La/field/annotation;
71        this = "is"
72        a = "test"
73    .end annotation
74    .annotation runtime Lorg/junit/Test;
75    .end annotation
76.end field
77
78.field public instanceField:Ljava/lang/String;
79
80
81
82.method public constructor <init>()V
83    .registers 1
84    invoke-direct {p0}, Ljava/lang/Object;-><init>()V
85    return-void
86.end method
87
88.method public testMethod(ILjava/lang/String;)Ljava/lang/String;
89    .registers 3
90    .annotation runtime Lorg/junit/Test;
91    .end annotation
92    .annotation system Lyet/another/annotation;
93        somevalue = 1234
94        anothervalue = 3.14159
95    .end annotation
96
97    const-string v0, "testing\n123"
98
99    goto switch:
100
101    sget v0, Lbaksmali/test/class;->staticField:I
102
103    switch:
104    packed-switch v0, pswitch:
105
106    try_start:
107    const/4 v0, 7
108    const v0, 10
109    nop
110    try_end:
111    .catch Ljava/lang/Exception; {try_start: .. try_end:} handler:
112    .catchall {try_start: .. try_end:} handler2:
113
114    handler:
115
116    Label10:
117    Label11:
118    Label12:
119    Label13:
120    return-object v0
121
122
123
124    .array-data 4
125        1 2 3 4 5 6 200
126    .end array-data
127
128    pswitch:
129    .packed-switch 10
130        Label10:
131        Label11:
132        Label12:
133        Label13:
134    .end packed-switch
135
136    handler2:
137
138    return-void
139
140.end method
141
142.method public abstract testMethod2()V
143    .annotation runtime Lsome/annotation;
144        subannotation = .subannotation Lsome/other/annotation;
145            value = "value"
146        .end subannotation
147    .end annotation
148    .annotation runtime Lorg/junit/Test;
149    .end annotation
150.end method
151
152
153.method public tryTest()V
154    .registers 1
155
156    handler:
157    nop
158
159
160    try_start:
161    const/4 v0, 7
162    const v0, 10
163    nop
164    try_end:
165    .catch Ljava/lang/Exception; {try_start: .. try_end:} handler:
166.end method
167
168
169.method public debugTest(IIIII)V
170    .registers 10
171
172    .parameter "Blah"
173    .parameter
174    .parameter "BlahWithAnnotations"
175        .annotation runtime Lsome/annotation;
176            something = "some value"
177            somethingelse = 1234
178        .end annotation
179        .annotation runtime La/second/annotation;
180        .end annotation
181    .end parameter
182    .parameter
183        .annotation runtime Lsome/annotation;
184            something = "some value"
185            somethingelse = 1234
186        .end annotation
187    .end parameter
188    .parameter "LastParam"
189
190    .prologue
191
192    nop
193    nop
194
195    .source "somefile.java"
196    .line 101
197
198    nop
199
200
201    .line 50
202
203    .local v0, aNumber:I
204    const v0, 1234
205    .end local v0
206
207    .source "someotherfile.java"
208    .line 900
209
210    const-string v0, "1234"
211
212    .restart local v0
213    const v0, 6789
214    .end local v0
215
216    .epilogue
217
218.end method