9

There is a class with generic type:

class Action[T]

Create some instances of it, put in a list:

val list = List(new Action[String], new Action[Int])

Iterate it, and how to get the actual type of the instances?

list foreach { action =>
     // how do I know the action is for a String or an Int?
}
Freewind
  • 193,756
  • 157
  • 432
  • 708

1 Answers1

13

Scala erases generic type parameters at compilation, so you would need to have some additional evidence in you object other than what traditional reflection provides. See:

How do I get around type erasure on Scala? Or, why can't I get the type parameter of my collections?

This questions seems to imply there might be some magic to apply in some circumstances:

Accounting for type parameters in a Scala generic class 'equals' method... are manifests the only way?

Community
  • 1
  • 1
Antoine Latter
  • 1,545
  • 10
  • 13