Data structures 如何从映射中填充Clojure记录?

Data structures 如何从映射中填充Clojure记录?,data-structures,clojure,record,Data Structures,Clojure,Record,有类似于唱片的东西吗?如果不是,我是否应该使用结构(文档不鼓励使用结构) 也许我完全做错了?我有一个相当复杂的函数,目前需要一个选项图。我试图澄清哪些选项值是可以接受/使用的(用记录替换)。现在,我想将其与在地图中包含此信息(并且在记录中包含数据的超集)的代码连接起来。不建议仅将记录用于“文档”用途—普通的旧地图更灵活、更简单、更容易。对于文档,您只需添加docstring或注释,或创建类似于(defn make which[thing1 thing2])的函数即可 如果您仍然想要一个记录,您有

有类似于唱片的东西吗?如果不是,我是否应该使用结构(文档不鼓励使用结构)


也许我完全做错了?我有一个相当复杂的函数,目前需要一个选项图。我试图澄清哪些选项值是可以接受/使用的(用记录替换)。现在,我想将其与在地图中包含此信息(并且在记录中包含数据的超集)的代码连接起来。

不建议仅将记录用于“文档”用途—普通的旧地图更灵活、更简单、更容易。对于文档,您只需添加docstring或注释,或创建类似于
(defn make which[thing1 thing2])
的函数即可

如果您仍然想要一个记录,您有两个选择,这取决于您使用的是clojure 1.3版还是更高版本。如果是这样,
(defrecord Whatever…
还定义了一个
map->Whatever
函数和一个采用位置参数的
->Whatever
函数。如果没有,您可以将
(写入(Whatever.nil nil)一些映射)
(为记录类型传递正确的nil数)