Scala's Manifest
s are a way to get around some type erasure problems due to the JVM's lack of reified generics.
They are discussed in several other questions; here are a few:
- What is a Manifest in Scala and when do you need it?
- How does Scala's (2.8) Manifest work?
- How do I get around type erasure on Scala? Or, why can't I get the type parameter of my collections?
- How can I use Scala's Manifest class to instantiate the erased class at runtime?
- Manifest vs ClassManifest. What does this Scala error mean?
One of the comments mentions that “This feature is experimental, and there are cases in which it doesn't work. Still, it can go a long way.” (Daniel Sobral)
What are the cases where the Manifest approach breaks down and why?