【发布时间】:2011-06-16 21:37:21
【问题描述】:
在 Scala 中,我可以使用幻像类型的概念(如 here 所述)来标记类型并在运行时删除此信息。我想知道是否可以用幻像类型标记原始类型而不将它们装箱。
一个例子可以是一个函数,它让 Int 仅在它是素数时通过。签名可能类似于以下内容:
def filterPrime(i: Int): Option[Int with IsPrime]
如果i 是素数,则函数返回值Some(i),否则返回None。
是否可以在不装箱原始整数的情况下在 Scala 中实现所述想法?
【问题讨论】:
标签: scala types static-analysis