summaryrefslogtreecommitdiff
path: root/test/files/run/reflection-java-annotations.check
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2012-09-14 21:31:21 +0200
committerEugene Burmako <xeno.by@gmail.com>2012-09-16 19:43:59 +0200
commitcf819b7756de917912807322259ebb993a52ce57 (patch)
tree029fda02a23ddc3051c1ec20aaeebc9dff9913c4 /test/files/run/reflection-java-annotations.check
parent24580ac84242679619d27f20258078dd012c120a (diff)
downloadscala-cf819b7756de917912807322259ebb993a52ce57.tar.gz
scala-cf819b7756de917912807322259ebb993a52ce57.tar.bz2
scala-cf819b7756de917912807322259ebb993a52ce57.zip
SI-6356 reflection now supports Java annotations
Except for one thingie: java enums are currently not understood by Scala reflection, hence they aren't yet supported in annotations.
Diffstat (limited to 'test/files/run/reflection-java-annotations.check')
-rw-r--r--test/files/run/reflection-java-annotations.check22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/files/run/reflection-java-annotations.check b/test/files/run/reflection-java-annotations.check
new file mode 100644
index 0000000000..84cfd03358
--- /dev/null
+++ b/test/files/run/reflection-java-annotations.check
@@ -0,0 +1,22 @@
+Type in expressions to have them evaluated.
+Type :help for more information.
+
+scala>
+
+scala> import scala.reflect.runtime.universe._
+import scala.reflect.runtime.universe._
+
+scala> val sym = typeOf[Foo].typeSymbol
+sym: reflect.runtime.universe.Symbol = class Foo
+
+scala> sym.typeSignature
+res0: reflect.runtime.universe.Type = java.lang.Object{def <init>(): Foo}
+
+scala> sym.getAnnotations foreach (_.javaArgs)
+
+scala> println(sym.getAnnotations)
+List(ComplexAnnotation(v1 = 1, v10 = "hello", v101 = [101, 101], v102 = [102, 102], v103 = ['g', 'g'], v104 = [104, 104], v105 = [105L, 105L], v106 = [106.0, 106.0], v107 = [107.0, 107.0], v108 = [false, true], v11 = classOf[Foo], v110 = ["hello", "world"], v111 = [classOf[SimpleAnnotation], classOf[ComplexAnnotation]], v113 = [SimpleAnnotation(v1 = 21, v10 = "world2", v11 = classOf[ComplexAnnotation], v2 = 22, v3 = '\027', v4 = 24, v5 = 25L, v6 = 26.0, v7 = 27.0, v8 = false)], v13 = SimpleAnnotation(v1 = 11, v10 = "world1", v11 = classOf[SimpleAnnotation], v2 = 12, v3 = '\r', v4 = 14, v5 = 15L, v6 = 16.0, v7 = 17.0, v8 = false), v2 = 2, v3 = '\03', v4 = 4, v5 = 5L, v6 = 6.0, v7 = 7.0, v8 = false))
+
+scala>
+
+scala>