榆树中的通用类型字典

时间:2018-04-07 21:16:03

标签: f# elm

我很好奇如何将这个从F#移植到Elm:

type World =
    { Rooms: Map<RoomId, Room> 
      Player: Player }

RoomId,Room之间的东西被称为泛型字典。 请参阅此处上下文:https://github.com/ShalokShalom/Elchemist/blob/master/Game.fs

我读了一些关于类型变量的内容,它们有帮助吗? 如果是这样,怎么样?

谢谢:D

1 个答案:

答案 0 :(得分:7)

Elm的语法类似。

编辑 - @dogbert是关于RoomId在原始答案中无法比较的。您可以使用String的类型别名。

type alias RoomId = String

type alias Room =
    { id: RoomId
    , details: Details
    , items: List Item
    , exits: Exits 
    }

type alias World =
    { rooms: Dict RoomId Room
    , player: Player
    }