1 2 3 4 5 6 7 8 9 10 11
class Foo[@specialized(Int) A](a:A) { def bar[@specialized(Int) B](f:A => B) = new Foo(f(a)) } object Test { def main(args:Array[String]): Unit = { val f = new Foo(333) val ms = f.getClass().getDeclaredMethods().map(_.getName).sorted ms.foreach(println) } }