Make vararg argument of java annotation have 'out' type

This commit is contained in:
Svetlana Isakova
2014-12-25 17:13:57 +03:00
parent d1556331ef
commit d2becce1ac
15 changed files with 94 additions and 46 deletions

View File

@@ -6,7 +6,7 @@ public trait AnnotationInParam {
public constructor A()
}
test.AnnotationInParam.MyAnnotationWithParam2(value = test.AnnotationInParam.MyAnnotation2(value = {"test", "test2"}: kotlin.Array<kotlin.String>): test.AnnotationInParam.MyAnnotation2) public open class B {
test.AnnotationInParam.MyAnnotationWithParam2(value = test.AnnotationInParam.MyAnnotation2(value = {"test", "test2"}: kotlin.Array<out kotlin.String>): test.AnnotationInParam.MyAnnotation2) public open class B {
public constructor B()
}
@@ -20,7 +20,7 @@ public trait AnnotationInParam {
}
public final annotation class MyAnnotation2 : kotlin.Annotation {
public constructor MyAnnotation2(/*0*/ vararg value: kotlin.String /*kotlin.Array<kotlin.String>*/)
public constructor MyAnnotation2(/*0*/ vararg value: kotlin.String /*kotlin.Array<out kotlin.String>*/)
public abstract fun value(): kotlin.Array<kotlin.String>
}

View File

@@ -2,7 +2,7 @@ package test
public trait ArrayOfEnumInParam {
java.lang.annotation.Target(value = {ElementType.FIELD, ElementType.CONSTRUCTOR}: kotlin.Array<java.lang.annotation.ElementType>) public final annotation class targetAnnotation : kotlin.Annotation {
java.lang.annotation.Target(value = {ElementType.FIELD, ElementType.CONSTRUCTOR}: kotlin.Array<out java.lang.annotation.ElementType>) public final annotation class targetAnnotation : kotlin.Annotation {
public constructor targetAnnotation(/*0*/ value: kotlin.String)
public abstract fun value(): kotlin.String
}

View File

@@ -2,12 +2,12 @@ package test
public trait ArrayOfStringInParam {
test.ArrayOfStringInParam.MyAnnotation(value = {"a", "b", "c"}: kotlin.Array<kotlin.String>) public open class A {
test.ArrayOfStringInParam.MyAnnotation(value = {"a", "b", "c"}: kotlin.Array<out kotlin.String>) public open class A {
public constructor A()
}
public final annotation class MyAnnotation : kotlin.Annotation {
public constructor MyAnnotation(/*0*/ vararg value: kotlin.String /*kotlin.Array<kotlin.String>*/)
public constructor MyAnnotation(/*0*/ vararg value: kotlin.String /*kotlin.Array<out kotlin.String>*/)
public abstract fun value(): kotlin.Array<kotlin.String>
}
}

View File

@@ -4,11 +4,11 @@ public open class ClassObjectArrayInParam {
public constructor ClassObjectArrayInParam()
public final annotation class Anno : kotlin.Annotation {
public constructor Anno(/*0*/ vararg value: java.lang.Class<out kotlin.Any?> /*kotlin.Array<java.lang.Class<out kotlin.Any?>>*/)
public constructor Anno(/*0*/ vararg value: java.lang.Class<out kotlin.Any?> /*kotlin.Array<out java.lang.Class<out kotlin.Any?>>*/)
public abstract fun value(): kotlin.Array<java.lang.Class<out kotlin.Any?>>
}
test.ClassObjectArrayInParam.Anno(value = {test.ClassObjectArrayInParam.class, test.ClassObjectArrayInParam.Nested.class, kotlin.String.class}: kotlin.Array<java.lang.Class<out kotlin.Any?>>) public open class Nested {
test.ClassObjectArrayInParam.Anno(value = {test.ClassObjectArrayInParam.class, test.ClassObjectArrayInParam.Nested.class, kotlin.String.class}: kotlin.Array<out java.lang.Class<out kotlin.Any?>>) public open class Nested {
public constructor Nested()
}
}

View File

@@ -2,12 +2,12 @@ package test
public trait EmptyArrayInParam {
test.EmptyArrayInParam.MyAnnotation(value = {}: kotlin.Array<kotlin.String>) public open class A {
test.EmptyArrayInParam.MyAnnotation(value = {}: kotlin.Array<out kotlin.String>) public open class A {
public constructor A()
}
public final annotation class MyAnnotation : kotlin.Annotation {
public constructor MyAnnotation(/*0*/ vararg value: kotlin.String /*kotlin.Array<kotlin.String>*/)
public constructor MyAnnotation(/*0*/ vararg value: kotlin.String /*kotlin.Array<out kotlin.String>*/)
public abstract fun value(): kotlin.Array<kotlin.String>
}
}