0

试图做一个scala.collection.immutable.NumericRange[UInt]

看起来它需要一个scala.math.Integral[UInt].

但是好像没有spire.math.Integral[UInt]

我假设那是因为在某种程度上UInt违反了周围的法律。Integral

我最感兴趣的是NumericRange[UInt].contains(x: UInt)

尝试自己构建一个scala.math.Integral[UInt]对我来说是愚蠢的吗?

还是我应该找到其他方法来获得contains

是否存在应该由Set[T]and继承RangeNumericRange[T]声明的特征contains[T]

这个特质应该叫什么?

我应该把它作为一个类型类吗?

我应该怎么称呼这个类型类?

4

1 回答 1

1

如果你只是需要contains(x: UInt),你应该使用spire.math.Interval[UInt]

参见:https ://typelevel.org/spire/api/spire/math/Interval.html

如果您需要其他内容,NumericRange[UInt]请查看将来出现的其他答案。

于 2021-03-27T14:01:59.510 回答