40 lines
1.7 KiB
Smali
40 lines
1.7 KiB
Smali
# Tests invoke-custom added in DEX version 38.
|
|
|
|
# Compile using smali: https://github.com/JesusFreke/smali
|
|
# java -jar smali.jar assemble invoke-custom-min.smali --api 28
|
|
|
|
.class public LFoo;
|
|
.super Ljava/lang/Object;
|
|
|
|
.method public la1(Ljava/util/ArrayList;)V
|
|
.registers 5
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Ljava/util/ArrayList",
|
|
"<",
|
|
"Ljava/lang/String;",
|
|
">;)V"
|
|
}
|
|
.end annotation
|
|
|
|
.prologue
|
|
.line 42
|
|
invoke-virtual {p1}, Ljava/util/ArrayList;->stream()Ljava/util/stream/Stream;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-custom {}, call_site_1("bar", ()Ljava/util/function/Predicate;, (Ljava/lang/Object;)Z, invoke-static@LFoo;->lambda$la1$1(I)Z, (I)Z)@Ljava/lang/invoke/LambdaMetafactory;->metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-custom {}, call_site_2("test", ()Ljava/util/function/Predicate;, (Ljava/lang/Object;)Z, invoke-static@LFoo;->lambda$la1$1(Ljava/lang/String;)Z, (Ljava/lang/String;)Z)@Ljava/lang/invoke/LambdaMetafactory;->metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-interface {v0, v1, v2}, Ljava/util/stream/Stream;->filter(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
|
|
|
|
.line 50
|
|
return-void
|
|
.end method
|