[FIR] Support deserialization of value parameter annotations

There are still some problems, see KT-39837
This commit is contained in:
Dmitriy Novozhilov
2020-06-25 18:26:01 +03:00
parent 2b2f9b3386
commit 7834284bec
22 changed files with 191 additions and 96 deletions
@@ -12,6 +12,6 @@ public final class Class : R|kotlin/Any| {
public final val x: R|kotlin/Int|
public get(): R|kotlin/Int|
public constructor(x: R|kotlin/Int|, y: R|kotlin/String|): R|test/Class|
public constructor(@R|test/A|() x: R|kotlin/Int|, @R|test/B|() y: R|kotlin/String|): R|test/Class|
}
@@ -1,4 +1,4 @@
public final fun R|kotlin/Int|.foo(x: R|kotlin/Int|): R|kotlin/Unit|
public final fun R|kotlin/Int|.foo(@R|test/A|() x: R|kotlin/Int|): R|kotlin/Unit|
public final annotation class A : R|kotlin/Annotation| {
public constructor(): R|test/A|
@@ -4,7 +4,7 @@ public final annotation class Anno : R|kotlin/Annotation| {
}
public final class Class : R|kotlin/Any| {
public final fun R|kotlin/String|.foo(x: R|kotlin/Int|): R|kotlin/Int|
public final fun R|kotlin/String|.foo(@R|test/Anno|() x: R|kotlin/Int|): R|kotlin/Int|
public constructor(): R|test/Class|
@@ -4,7 +4,7 @@ public final annotation class Anno : R|kotlin/Annotation| {
}
public final class Class : R|kotlin/Any| {
public final fun foo(x: R|kotlin/String|): R|kotlin/Unit|
public final fun foo(@R|test/Anno|() x: R|kotlin/String|): R|kotlin/Unit|
public constructor(): R|test/Class|
@@ -4,6 +4,6 @@ public final annotation class Anno : R|kotlin/Annotation| {
}
public abstract interface Trait : R|kotlin/Any| {
public open fun foo(x: R|kotlin/String|): R|kotlin/Int|
public open fun foo(@R|test/Anno|() x: R|kotlin/String|): R|kotlin/Int|
}
@@ -1,6 +1,6 @@
public final fun bar(x: R|kotlin/Int|): R|kotlin/Unit|
public final fun bar(@R|test/A|() @R|test/B|() @R|test/C|() @R|test/D|() x: R|kotlin/Int|): R|kotlin/Unit|
public final fun foo(x: R|kotlin/Int|, y: R|kotlin/Double|, z: R|kotlin/String|): R|kotlin/Unit|
public final fun foo(@R|test/A|() @R|test/B|() x: R|kotlin/Int|, @R|test/A|() @R|test/C|() y: R|kotlin/Double|, @R|test/B|() @R|test/C|() @R|test/D|() z: R|kotlin/String|): R|kotlin/Unit|
public final annotation class A : R|kotlin/Annotation| {
public constructor(): R|test/A|
@@ -1,4 +1,4 @@
public final fun foo(x: R|kotlin/Int|): R|kotlin/Unit|
public final fun foo(@R|test/Anno|() x: R|kotlin/Int|): R|kotlin/Unit|
public final annotation class Anno : R|kotlin/Annotation| {
public constructor(): R|test/Anno|