在Crystal中编写等效代数数据类型的惯用方法是什么?例如 . 在Haskell我可能有
data Stage = StageInitial String | StageFinished String
所以我希望有两个阶段,每个阶段都有一个字符串有效负载 . 后来我想在舞台上进行模式匹配 .
你怎么用水晶写这个?
你可以粗略地模仿它
record StageInitial, data : String record StageFinished, data : String alias Stage = StageInitial | StageFinished
然后模式匹配 case .
case
然而,这不是一种在Crystal中构造它的特殊惯用方法,因此您可能会在以后遇到摩擦 .
1 回答
你可以粗略地模仿它
然后模式匹配
case
.然而,这不是一种在Crystal中构造它的特殊惯用方法,因此您可能会在以后遇到摩擦 .