summaryrefslogtreecommitdiff
path: root/test/files/run/reflection-fieldmirror-ctorparam.scala
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2012-06-07 22:40:41 +0200
committerEugene Burmako <xeno.by@gmail.com>2012-06-08 15:34:40 +0200
commit0c153ee15e714e0ca8752151012b8f1fa9642983 (patch)
tree73fbeaee63acc64f08eeaec05da586ded9fa692f /test/files/run/reflection-fieldmirror-ctorparam.scala
parent178069e13d841c029bd3cf78773788ad3743e218 (diff)
downloadscala-0c153ee15e714e0ca8752151012b8f1fa9642983.tar.gz
scala-0c153ee15e714e0ca8752151012b8f1fa9642983.tar.bz2
scala-0c153ee15e714e0ca8752151012b8f1fa9642983.zip
fixes some issues with reflectField brought up today
Diffstat (limited to 'test/files/run/reflection-fieldmirror-ctorparam.scala')
-rw-r--r--test/files/run/reflection-fieldmirror-ctorparam.scala21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/files/run/reflection-fieldmirror-ctorparam.scala b/test/files/run/reflection-fieldmirror-ctorparam.scala
new file mode 100644
index 0000000000..286399072e
--- /dev/null
+++ b/test/files/run/reflection-fieldmirror-ctorparam.scala
@@ -0,0 +1,21 @@
+import scala.reflect.runtime.universe._
+import scala.reflect.runtime.{currentMirror => cm}
+
+object Test extends App {
+ class A(x: Int) {
+ private[this] var xx = x
+ }
+
+ val a = new A(42)
+
+ val im: InstanceMirror = cm.reflect(a)
+ val cs = im.reflectClass.symbol
+ val f = cs.typeSignature.declaration(newTermName("x")).asTermSymbol
+ try {
+ val fm: FieldMirror = im.reflectField(f)
+ println(fm.get)
+ } catch {
+ case ex: Throwable =>
+ println(s"${ex.getClass}: ${ex.getMessage}")
+ }
+}