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
16.class public Lart_test/TestCases1966;
17.super Ljava/lang/Object;
18
19# direct methods
20.method public constructor <init>()V
21    .registers 1
22    invoke-direct {p0}, Ljava/lang/Object;-><init>()V
23    return-void
24.end method
25
26.method public static CastExactMethod(Ljava/util/function/IntConsumer;)V
27    .registers 3
28    const-string v0, "ObjectMethod"
29    invoke-static {v0}, Lart/Test1966$TestClass1;->create(Ljava/lang/String;)Ljava/lang/Object;
30    move-result-object v0
31    check-cast v0, Lart/Test1966$TestClass1;
32    const/16 v1, 0x0
33    invoke-interface {p0, v1}, Ljava/util/function/IntConsumer;->accept(I)V
34    invoke-static {v0}, Lart/Test1966;->reportValue(Ljava/lang/Object;)V
35    return-void
36.end method
37
38.method public static CastInterfaceMethod(Ljava/util/function/IntConsumer;)V
39    .registers 3
40    const-string v0, "ObjectMethod"
41    invoke-static {v0}, Lart/Test1966$TestClass1;->create(Ljava/lang/String;)Ljava/lang/Object;
42    move-result-object v0
43    check-cast v0, Lart/Test1966$TestClass1;
44    const/16 v1, 0x0
45    invoke-interface {p0, v1}, Ljava/util/function/IntConsumer;->accept(I)V
46    invoke-static {v0}, Lart/Test1966;->reportValue(Ljava/lang/Object;)V
47    return-void
48.end method
49
50.method public static ExactClassMethod(Ljava/util/function/IntConsumer;)V
51    .registers 3
52    const-string v0, "SpecificClassMethod"
53    invoke-static {v0}, Lart/Test1966$TestClass1;->createExact(Ljava/lang/String;)Lart/Test1966$TestClass1;
54    move-result-object v0
55    const/16 v1, 0x0
56    invoke-interface {p0, v1}, Ljava/util/function/IntConsumer;->accept(I)V
57    invoke-static {v0}, Lart/Test1966;->reportValue(Ljava/lang/Object;)V
58    return-void
59.end method
60
61.method public static InterfaceMethod(Ljava/util/function/IntConsumer;)V
62    .registers 3
63    const-string v0, "InterfaceMethod"
64    invoke-static {v0}, Lart/Test1966$TestClass1;->createInterface(Ljava/lang/String;)Lart/Test1966$TestInterface;
65    move-result-object v0
66    const/16 v1, 0x0
67    invoke-interface {p0, v1}, Ljava/util/function/IntConsumer;->accept(I)V
68    invoke-static {v0}, Lart/Test1966;->reportValue(Ljava/lang/Object;)V
69    return-void
70.end method
71
72.method public static ObjectMethod(Ljava/util/function/IntConsumer;)V
73    .registers 3
74    const-string v0, "ObjectMethod"
75    invoke-static {v0}, Lart/Test1966$TestClass1;->create(Ljava/lang/String;)Ljava/lang/Object;
76    move-result-object v0
77    const/16 v1, 0x0
78    invoke-interface {p0, v1}, Ljava/util/function/IntConsumer;->accept(I)V
79    invoke-static {v0}, Lart/Test1966;->reportValue(Ljava/lang/Object;)V
80    return-void
81.end method
82
83.method public static PrimitiveMethod(Ljava/util/function/IntConsumer;)V
84    .registers 3
85    const/16 v0, 0x2a
86    const/16 v1, 0x0
87    invoke-interface {p0, v1}, Ljava/util/function/IntConsumer;->accept(I)V
88    invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
89    move-result-object p0
90    invoke-static {p0}, Lart/Test1966;->reportValue(Ljava/lang/Object;)V
91    return-void
92.end method
93
94.method public static NullMethod(Ljava/util/function/IntConsumer;)V
95    .registers 3
96    const/4 v0, 0x0
97    const/16 v1, 0x0
98    invoke-interface {p0, v1}, Ljava/util/function/IntConsumer;->accept(I)V
99    invoke-static {v0}, Lart/Test1966;->reportValue(Ljava/lang/Object;)V
100    return-void
101.end method
102
103.method public static CastInterfaceNullMethod(Ljava/util/function/IntConsumer;)V
104    .registers 3
105    const/4 v0, 0x0
106    check-cast v0, Lart/Test1966$TestInterface;
107    const/16 v1, 0x0
108    invoke-interface {p0, v1}, Ljava/util/function/IntConsumer;->accept(I)V
109    invoke-static {v0}, Lart/Test1966;->reportValue(Ljava/lang/Object;)V
110    return-void
111.end method
112
113.method public static CastExactNullMethod(Ljava/util/function/IntConsumer;)V
114    .registers 3
115    const/4 v0, 0x0
116    check-cast v0, Lart/Test1966$TestClass1;
117    const/16 v1, 0x0
118    invoke-interface {p0, v1}, Ljava/util/function/IntConsumer;->accept(I)V
119    invoke-static {v0}, Lart/Test1966;->reportValue(Ljava/lang/Object;)V
120    return-void
121.end method