equal
deleted
inserted
replaced
6 */ |
6 */ |
7 |
7 |
8 package isabelle |
8 package isabelle |
9 |
9 |
10 |
10 |
|
11 import java.lang.reflect.Method |
|
12 |
|
13 |
11 object Untyped |
14 object Untyped |
12 { |
15 { |
|
16 def method(c: Class[_], name: String, arg_types: Class[_]*): Method = |
|
17 { |
|
18 val m = c.getDeclaredMethod(name, arg_types: _*) |
|
19 m.setAccessible(true) |
|
20 m |
|
21 } |
|
22 |
13 def classes(obj: AnyRef): Iterator[Class[_ <: AnyRef]] = new Iterator[Class[_ <: AnyRef]] { |
23 def classes(obj: AnyRef): Iterator[Class[_ <: AnyRef]] = new Iterator[Class[_ <: AnyRef]] { |
14 private var next_elem: Class[_ <: AnyRef] = obj.getClass |
24 private var next_elem: Class[_ <: AnyRef] = obj.getClass |
15 def hasNext(): Boolean = next_elem != null |
25 def hasNext(): Boolean = next_elem != null |
16 def next(): Class[_ <: AnyRef] = { |
26 def next(): Class[_ <: AnyRef] = { |
17 val c = next_elem |
27 val c = next_elem |