Haskell 枚举比较

5

我定义了一个枚举:

data Direction = Clockwise | CounterClockwise deriving (Enum)

变量'direction'的类型为'Direction'。在进行以下比较时:

direction == Clockwise

我遇到了这个错误:

  No instance for (Eq OrbitDirection) arising from a use of `=='
  In the expression: direction == Clockwise

2
几乎任何导出的 Enum 也应该派生EqOrdShowRead。在某些时候,您可能还想将Generic添加到该列表中。 - dfeuer
1个回答

9
这很简单:将Eq实例添加到派生实例列表中即可。
data Direction = Clockwise | CounterClockwise deriving (Enum, Eq)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接