Change mangling for destructured lambda parameters
This commit is contained in:
@@ -9,6 +9,6 @@ fun box() {
|
||||
|
||||
// METHOD : DestructuringInLambdasKt$box$1.invoke(LA;)Ljava/lang/String;
|
||||
// VARIABLE : NAME=this TYPE=LDestructuringInLambdasKt$box$1; INDEX=0
|
||||
// VARIABLE : NAME=$x_y TYPE=LA; INDEX=1
|
||||
// VARIABLE : NAME=$dstr$x$y TYPE=LA; INDEX=1
|
||||
// VARIABLE : NAME=x TYPE=Ljava/lang/String; INDEX=2
|
||||
// VARIABLE : NAME=y TYPE=I INDEX=3
|
||||
|
||||
+1
-1
@@ -15,6 +15,6 @@ suspend fun foo(data: Data, body: suspend (Data) -> Unit) {
|
||||
// METHOD : DataClassKt$test$2.invokeSuspend(Ljava/lang/Object;)Ljava/lang/Object;
|
||||
// VARIABLE : NAME=this TYPE=LDataClassKt$test$2; INDEX=0
|
||||
// VARIABLE : NAME=result TYPE=Ljava/lang/Object; INDEX=1
|
||||
// VARIABLE : NAME=$x_param_y_param TYPE=LData; INDEX=2
|
||||
// VARIABLE : NAME=$dstr$x_param$y_param TYPE=LData; INDEX=2
|
||||
// VARIABLE : NAME=x_param TYPE=Ljava/lang/String; INDEX=3
|
||||
// VARIABLE : NAME=y_param TYPE=I INDEX=4
|
||||
|
||||
Vendored
+1
-1
@@ -21,7 +21,7 @@ suspend fun test() = B.bar()
|
||||
// METHOD : ExtensionComponentsKt$bar$3.invokeSuspend(Ljava/lang/Object;)Ljava/lang/Object;
|
||||
// VARIABLE : NAME=this TYPE=LExtensionComponentsKt$bar$3; INDEX=0
|
||||
// VARIABLE : NAME=result TYPE=Ljava/lang/Object; INDEX=1
|
||||
// VARIABLE : NAME=$x_param_y_param_z_param TYPE=LA; INDEX=2
|
||||
// VARIABLE : NAME=$dstr$x_param$y_param$z_param TYPE=LA; INDEX=2
|
||||
// VARIABLE : NAME=x_param TYPE=Ljava/lang/String; INDEX=3
|
||||
// VARIABLE : NAME=y_param TYPE=Ljava/lang/String; INDEX=4
|
||||
// VARIABLE : NAME=z_param TYPE=I INDEX=5
|
||||
|
||||
+1
-1
@@ -10,6 +10,6 @@ suspend fun test() = foo(A("OK", 1)) { (x_param, y_param) -> x_param + (y_param.
|
||||
// METHOD : GenericKt$test$2.invokeSuspend(Ljava/lang/Object;)Ljava/lang/Object;
|
||||
// VARIABLE : NAME=this TYPE=LGenericKt$test$2; INDEX=0
|
||||
// VARIABLE : NAME=result TYPE=Ljava/lang/Object; INDEX=1
|
||||
// VARIABLE : NAME=$x_param_y_param TYPE=LA; INDEX=2
|
||||
// VARIABLE : NAME=$dstr$x_param$y_param TYPE=LA; INDEX=2
|
||||
// VARIABLE : NAME=x_param TYPE=Ljava/lang/String; INDEX=3
|
||||
// VARIABLE : NAME=y_param TYPE=I INDEX=4
|
||||
|
||||
+1
-1
@@ -9,7 +9,7 @@ suspend fun test() = foo(A("O", "K")) { (x_param, y_param) -> x_param + y_param
|
||||
// METHOD : InlineKt.test(Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
|
||||
// VARIABLE : NAME=<name for destructuring parameter 0> TYPE=LA; INDEX=4
|
||||
// VARIABLE : NAME=continuation TYPE=Lkotlin/coroutines/Continuation; INDEX=3
|
||||
// VARIABLE : NAME=$x_param_y_param TYPE=LA; INDEX=6
|
||||
// VARIABLE : NAME=$dstr$x_param$y_param TYPE=LA; INDEX=6
|
||||
// VARIABLE : NAME=x_param TYPE=Ljava/lang/String; INDEX=7
|
||||
// VARIABLE : NAME=y_param TYPE=Ljava/lang/String; INDEX=8
|
||||
// VARIABLE : NAME=$i$a$-foo-InlineKt$test$2 TYPE=I INDEX=5
|
||||
|
||||
+1
-1
@@ -13,6 +13,6 @@ suspend fun test() = foo(A()) { (x_param, _, y_param) -> x_param + y_param }
|
||||
// METHOD : UnderscoreNamesKt$test$2.invokeSuspend(Ljava/lang/Object;)Ljava/lang/Object;
|
||||
// VARIABLE : NAME=this TYPE=LUnderscoreNamesKt$test$2; INDEX=0
|
||||
// VARIABLE : NAME=result TYPE=Ljava/lang/Object; INDEX=1
|
||||
// VARIABLE : NAME=$x_param_$_$_y_param TYPE=LA; INDEX=2
|
||||
// VARIABLE : NAME=$dstr$x_param$-0024_-0024$y_param TYPE=LA; INDEX=2
|
||||
// VARIABLE : NAME=x_param TYPE=Ljava/lang/String; INDEX=3
|
||||
// VARIABLE : NAME=y_param TYPE=Ljava/lang/String; INDEX=4
|
||||
|
||||
@@ -15,7 +15,7 @@ fun box(): String {
|
||||
|
||||
// METHOD : DestructuringInlineLambdaKt.box()Ljava/lang/String;
|
||||
// VARIABLE : NAME=i TYPE=I INDEX=2
|
||||
// VARIABLE : NAME=$a1_a2_a3 TYPE=LStation; INDEX=1
|
||||
// VARIABLE : NAME=$dstr$a1$a2$a3 TYPE=LStation; INDEX=1
|
||||
// VARIABLE : NAME=a1 TYPE=Ljava/lang/String; INDEX=4
|
||||
// VARIABLE : NAME=a2 TYPE=Ljava/lang/String; INDEX=5
|
||||
// VARIABLE : NAME=a3 TYPE=I INDEX=6
|
||||
|
||||
@@ -28,7 +28,7 @@ fun box() {
|
||||
// VARIABLE : NAME=c TYPE=C INDEX=9
|
||||
// VARIABLE : NAME=a TYPE=D INDEX=7
|
||||
// VARIABLE : NAME=this TYPE=LUnderscoreNamesKt$box$1; INDEX=0
|
||||
// VARIABLE : NAME=$x_$_$_y TYPE=LA; INDEX=1
|
||||
// VARIABLE : NAME=$dstr$x$-0024_-0024$y TYPE=LA; INDEX=1
|
||||
// VARIABLE : NAME=$noName_1 TYPE=Ljava/lang/String; INDEX=2
|
||||
// VARIABLE : NAME=w TYPE=I INDEX=3
|
||||
// VARIABLE : NAME=x TYPE=D INDEX=4
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
// LOCAL_VARIABLE_TABLE
|
||||
|
||||
fun foo() {
|
||||
t { (`a b`, `b$c`, `c-d`, `b$$c--d`, `a()§&*&^@あ化`) -> }
|
||||
}
|
||||
|
||||
private fun t(block: (Arr) -> Unit) {
|
||||
block(Arr())
|
||||
}
|
||||
|
||||
private data class Arr(
|
||||
val a1: Int = 0,
|
||||
val a2: Int = 0,
|
||||
val a3: Int = 0,
|
||||
val a4: Int = 0,
|
||||
val a5: Int = 0
|
||||
)
|
||||
@@ -0,0 +1,123 @@
|
||||
final class Arr : java/lang/Object {
|
||||
private final int a1
|
||||
|
||||
private final int a2
|
||||
|
||||
private final int a3
|
||||
|
||||
private final int a4
|
||||
|
||||
private final int a5
|
||||
|
||||
public void <init>(int a1, int a2, int a3, int a4, int a5) {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
1 a1: I
|
||||
2 a2: I
|
||||
3 a3: I
|
||||
4 a4: I
|
||||
5 a5: I
|
||||
}
|
||||
|
||||
public void <init>(int p0, int p1, int p2, int p3, int p4, int p5, kotlin.jvm.internal.DefaultConstructorMarker p6)
|
||||
|
||||
public void <init>()
|
||||
|
||||
public final int component1() {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
}
|
||||
|
||||
public final int component2() {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
}
|
||||
|
||||
public final int component3() {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
}
|
||||
|
||||
public final int component4() {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
}
|
||||
|
||||
public final int component5() {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
}
|
||||
|
||||
public final Arr copy(int a1, int a2, int a3, int a4, int a5) {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
1 a1: I
|
||||
2 a2: I
|
||||
3 a3: I
|
||||
4 a4: I
|
||||
5 a5: I
|
||||
}
|
||||
|
||||
public static Arr copy$default(Arr p0, int p1, int p2, int p3, int p4, int p5, int p6, java.lang.Object p7)
|
||||
|
||||
public boolean equals(java.lang.Object p0)
|
||||
|
||||
public final int getA1() {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
}
|
||||
|
||||
public final int getA2() {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
}
|
||||
|
||||
public final int getA3() {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
}
|
||||
|
||||
public final int getA4() {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
}
|
||||
|
||||
public final int getA5() {
|
||||
Local variables:
|
||||
0 this: LArr;
|
||||
}
|
||||
|
||||
public int hashCode()
|
||||
|
||||
public java.lang.String toString()
|
||||
}
|
||||
|
||||
final class MangledNamesKt$foo$1 : kotlin/jvm/internal/Lambda, kotlin/jvm/functions/Function1 {
|
||||
public final static MangledNamesKt$foo$1 INSTANCE
|
||||
|
||||
static void <clinit>()
|
||||
|
||||
void <init>()
|
||||
|
||||
public java.lang.Object invoke(java.lang.Object p0)
|
||||
|
||||
public final void invoke(Arr $dstr$a_u20b$b_u24c$c_u2dd$b_u24_u24c_u2d_u2dd$a_u28_u29§_u26_u2a_u26_u5e_u40あ化) {
|
||||
Local variables:
|
||||
0 this: LMangledNamesKt$foo$1;
|
||||
1 $dstr$a_u20b$b_u24c$c_u2dd$b_u24_u24c_u2d_u2dd$a_u28_u29§_u26_u2a_u26_u5e_u40あ化: LArr;
|
||||
2 a b: I
|
||||
3 b$c: I
|
||||
4 c-d: I
|
||||
5 b$$c--d: I
|
||||
6 a()§&*&^@あ化: I
|
||||
}
|
||||
}
|
||||
|
||||
public final class MangledNamesKt : java/lang/Object {
|
||||
public final static void foo()
|
||||
|
||||
private final static void t(kotlin.jvm.functions.Function1 block) {
|
||||
Local variables:
|
||||
0 block: Lkotlin/jvm/functions/Function1;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user