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?
}
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?