Fix convering parents of annotations on primary constructor parameters

This commit is contained in:
Dmitry Jemerov
2017-09-26 15:49:18 +02:00
parent 56168b4a09
commit a4f5a1335a
6 changed files with 38 additions and 8 deletions
@@ -1,5 +1,9 @@
annotation class MyAnnotation
annotation class MyAnnotation2
annotation class MyAnnotation3
annotation class MyAnnotation4
annotation class MyAnnotation5
class Test1(@MyAnnotation var bar: Int)
class Test2(@get:MyAnnotation @set:MyAnnotation @setparam:MyAnnotation @property:MyAnnotation @field:MyAnnotation var bar: Int)
class Test2(@get:MyAnnotation @set:MyAnnotation2 @setparam:MyAnnotation3 @property:MyAnnotation4 @field:MyAnnotation5 var bar: Int)
@@ -1,5 +1,9 @@
UFile (package = )
UClass (name = MyAnnotation)
UClass (name = MyAnnotation2)
UClass (name = MyAnnotation3)
UClass (name = MyAnnotation4)
UClass (name = MyAnnotation5)
UClass (name = Test1)
UField (name = bar)
UAnnotation (fqName = null)
@@ -13,14 +17,14 @@ UFile (package = )
UAnnotation (fqName = null)
UClass (name = Test2)
UField (name = bar)
UAnnotation (fqName = MyAnnotation)
UAnnotation (fqName = MyAnnotation5)
UAnnotation (fqName = null)
UAnnotationMethod (name = getBar)
UAnnotation (fqName = MyAnnotation)
UAnnotationMethod (name = setBar)
UAnnotation (fqName = MyAnnotation)
UAnnotation (fqName = MyAnnotation2)
UParameter (name = p)
UAnnotation (fqName = MyAnnotation)
UAnnotation (fqName = MyAnnotation3)
UAnnotation (fqName = null)
UAnnotationMethod (name = Test2)
UParameter (name = bar)
@@ -1,6 +1,18 @@
public abstract annotation MyAnnotation {
}
public abstract annotation MyAnnotation2 {
}
public abstract annotation MyAnnotation3 {
}
public abstract annotation MyAnnotation4 {
}
public abstract annotation MyAnnotation5 {
}
public final class Test1 {
private var bar: int
public final fun getBar() : int = UastEmptyExpression
@@ -12,7 +24,7 @@ public final class Test2 {
private var bar: int
@MyAnnotation
public final fun getBar() : int = UastEmptyExpression
@MyAnnotation
@MyAnnotation2
public final fun setBar(p: int) : void = UastEmptyExpression
public fun Test2(bar: int) = UastEmptyExpression
}