1; Copyright (C) 2019 The Android Open Source Project
2;
3; Licensed under the Apache License, Version 2.0 (the "License");
4; you may not use this file except in compliance with the License.
5; You may obtain a copy of the License at
6;
7;      http://www.apache.org/licenses/LICENSE-2.0
8;
9; Unless required by applicable law or agreed to in writing, software
10; distributed under the License is distributed on an "AS IS" BASIS,
11; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12; See the License for the specific language governing permissions and
13; limitations under the License.
14
15.class public art_test/TestCases1966
16.super java/lang/Object
17.inner class public static TestClass1 inner art/Test1966$TestClass1 outer art/Test1966
18.inner interface public static abstract TestInterface inner art/Test1966$TestInterface outer art/Test1966
19
20.method public <init>()V
21  .limit stack 1
22  .limit locals 1
23  0: aload_0
24  1: invokespecial java/lang/Object/<init>()V
25  4: return
26.end method
27
28.method public static PrimitiveMethod(Ljava/util/function/IntConsumer;)V
29  .limit stack 2
30  .limit locals 2
31  0: bipush 42
32  2: istore_1
33  3: aload_0
34  4: sipush 1
35  7: invokeinterface java/util/function/IntConsumer/accept(I)V 2
36  12: iload_1
37  13: invokestatic java/lang/Integer/valueOf(I)Ljava/lang/Integer;
38  16: invokestatic art/Test1966/reportValue(Ljava/lang/Object;)V
39  19: return
40.end method
41
42.method public static CastInterfaceMethod(Ljava/util/function/IntConsumer;)V
43  .limit stack 2
44  .limit locals 3
45  0: ldc "ObjectMethod"
46  2: invokestatic art/Test1966$TestClass1/create(Ljava/lang/String;)Ljava/lang/Object;
47  5: astore_1
48  6: aload_1
49  7: checkcast art/Test1966$TestClass1
50  10: astore_2
51  11: aload_0
52  12: sipush 2
53  15: invokeinterface java/util/function/IntConsumer/accept(I)V 2
54  20: aload_2
55  21: invokestatic art/Test1966/reportValue(Ljava/lang/Object;)V
56  24: return
57.end method
58
59.method public static CastExactMethod(Ljava/util/function/IntConsumer;)V
60  .limit stack 2
61  .limit locals 3
62  0: ldc "ObjectMethod"
63  2: invokestatic art/Test1966$TestClass1/create(Ljava/lang/String;)Ljava/lang/Object;
64  5: astore_1
65  6: aload_1
66  7: checkcast art/Test1966$TestClass1
67  10: astore_2
68  11: aload_0
69  12: sipush 2
70  15: invokeinterface java/util/function/IntConsumer/accept(I)V 2
71  20: aload_2
72  21: invokestatic art/Test1966/reportValue(Ljava/lang/Object;)V
73  24: return
74.end method
75
76.method public static ObjectMethod(Ljava/util/function/IntConsumer;)V
77  .limit stack 2
78  .limit locals 2
79  0: ldc "ObjectMethod"
80  2: invokestatic art/Test1966$TestClass1/create(Ljava/lang/String;)Ljava/lang/Object;
81  5: astore_1
82  6: aload_0
83  7: sipush 1
84  10: invokeinterface java/util/function/IntConsumer/accept(I)V 2
85  15: aload_1
86  16: invokestatic art/Test1966/reportValue(Ljava/lang/Object;)V
87  19: return
88.end method
89
90.method public static InterfaceMethod(Ljava/util/function/IntConsumer;)V
91  .limit stack 2
92  .limit locals 2
93  0: ldc "InterfaceMethod"
94  2: invokestatic art/Test1966$TestClass1/createInterface(Ljava/lang/String;)Lart/Test1966$TestInterface;
95  5: astore_1
96  6: aload_0
97  7: sipush 1
98  10: invokeinterface java/util/function/IntConsumer/accept(I)V 2
99  15: aload_1
100  16: invokestatic art/Test1966/reportValue(Ljava/lang/Object;)V
101  19: return
102.end method
103
104.method public static ExactClassMethod(Ljava/util/function/IntConsumer;)V
105  .limit stack 2
106  .limit locals 2
107  0: ldc "SpecificClassMethod"
108  2: invokestatic art/Test1966$TestClass1/createExact(Ljava/lang/String;)Lart/Test1966$TestClass1;
109  5: astore_1
110  6: aload_0
111  7: sipush 1
112  10: invokeinterface java/util/function/IntConsumer/accept(I)V 2
113  15: aload_1
114  16: invokestatic art/Test1966/reportValue(Ljava/lang/Object;)V
115  19: return
116.end method
117
118.method public static CastExactNullMethod(Ljava/util/function/IntConsumer;)V
119  .limit stack 2
120  .limit locals 3
121  0: aconst_null
122  1: astore_1
123  2: aload_1
124  3: checkcast art/Test1966$TestClass1
125  6: astore_2
126  7: aload_0
127  8: sipush 2
128  11: invokeinterface java/util/function/IntConsumer/accept(I)V 2
129  16: aload_2
130  17: invokestatic art/Test1966/reportValue(Ljava/lang/Object;)V
131  20: return
132.end method
133
134.method public static CastInterfaceNullMethod(Ljava/util/function/IntConsumer;)V
135  .limit stack 2
136  .limit locals 3
137  0: aconst_null
138  1: astore_1
139  2: aload_1
140  3: checkcast art/Test1966$TestInterface
141  6: astore_2
142  7: aload_0
143  8: sipush 2
144  11: invokeinterface java/util/function/IntConsumer/accept(I)V 2
145  16: aload_2
146  17: invokestatic art/Test1966/reportValue(Ljava/lang/Object;)V
147  20: return
148.end method
149
150.method public static NullMethod(Ljava/util/function/IntConsumer;)V
151  .limit stack 2
152  .limit locals 2
153  0: aconst_null
154  1: astore_1
155  2: aload_0
156  3: sipush 1
157  6: invokeinterface java/util/function/IntConsumer/accept(I)V 2
158  11: aload_1
159  12: invokestatic art/Test1966/reportValue(Ljava/lang/Object;)V
160  15: return
161.end method
162