我正在尝试从我自己的地图创建一个拉链。根据拉链定义,
Usage: (zipper branch? children make-node root)
参数分支?孩子们很清楚,我能够定义它。但是 make-node 功能令人困惑。我给出了一个我认为没有被使用的实现。
我有一张地图
{:question "Question 1" :yes "Answer1"
:no {:question "Question 2"
:yes "Answer2"
:no "Answer3"}}
我想从这张地图上做一个拉链。所以我使用了以下拉链函数调用,
(zip/zipper map?
(fn [node] [(:yes node) (:no node)])
(fn [node children] (:question node))
question-bank)
这工作正常。即使给 make-node 参数 nil,它也可以工作。我不明白何时何地将使用此参数。