假设我有这样的类型:
data Graph vertex = Graph {
vertices :: [vertex],
edgelist :: [(vertex, [vertex])]
}
Run Code Online (Sandbox Code Playgroud)
但是我想在类型变量顶点上有一个类型类约束,我试图像使用类型类定义那样做:
data (Eq vertex) => Graph vertex = Graph {
vertices :: [vertex],
edgelist :: [(vertex, [vertex])]
}
Run Code Online (Sandbox Code Playgroud)
但这会产生语法错误Illegal datatype context (use DatatypeContexts).实现这一目标的正确方法是什么?还是不可能?
| 归档时间: |
|
| 查看次数: |
57 次 |
| 最近记录: |