Allow top-level properties or properties from class object as annotation parameters

This commit is contained in:
Natalia.Ukhorskaya
2013-08-02 14:18:39 +04:00
parent 27801d5351
commit 064f114b25
9 changed files with 173 additions and 5 deletions
@@ -0,0 +1,17 @@
import java.lang.annotation.Retention
import java.lang.annotation.RetentionPolicy
Ann(i) class MyClass
fun box(): String {
val ann = javaClass<MyClass>().getAnnotation(javaClass<Ann>())
if (ann == null) return "fail: cannot find Ann on MyClass}"
if (ann.i != 1) return "fail: annotation parameter i should be 1, but was ${ann.i}"
return "OK"
}
Retention(RetentionPolicy.RUNTIME)
annotation class Ann(val i: Int)
val i2: Int = 1
val i: Int = i2