Scala的清单有哪些局限性?

时间:2011-04-16 06:25:17

标签: generics scala manifest reification

Scala的Manifest是一种解决某些类型擦除问题的方法,因为JVM缺乏具体的泛型。

在其他几个问题中讨论了它们;这里有几个:

其中一条评论提到“此功能是实验性的,有些情况下它不起作用。不过,它可以走很长的路。“(Daniel Sobral)

Manifest方法出现故障的原因是什么?为什么?

2 个答案:

答案 0 :(得分:8)

最重要的案例应该是Scala团队bug跟踪系统中的开放门票。我找到了以下内容:

我相信一般的想法是,Manifest将成为计划/升级的Scala反射库的一部分,除了在Arrays的上下文中使用它们是“你自己承担风险”(see)。

答案 1 :(得分:3)

还有一个:

    scala> class C;
    defined class C

    scala> trait T;
    defined trait T

    scala> manifest[C] <:< manifest[C with T]
    res0: Boolean = true

我甚至没有报道,因为根据this,清单在2.10中已被弃用,所以他们不会修复错误。