Обратный вызов на выходе следующего
(def seq-counter (atom 0))
(defn tokenize-data [data]
(reduce
(fn [out-data-map token]
(if (seq? token)
(conj out-data-map {(keyword (str "DIRECTIVE_" (reset! seq-counter (inc @seq-counter))))token})
(if-not (= token (first '(EQU)))
(conj out-data-map {(keyword (str "DATA_1")) token})
(conj out-data-map {:START '(EQU)}))))
{}
data))
вызывается с
'(EQU (COLOR TABLE) ?)
производит
([:START (EQU)] [:DIRECTIVE_13 (COLOR TABLE)] [:DATA_1 ?])
Мой вопрос: что это? как значение и как его сравнить (кроме того, что ниже)?
Я не могу проверить, чтобы увидеть, если? есть ли использование \ ?.
Все, что я могу сделать, это сравнить это, и я получаю желаемый результат.
(= (last (nth (reverse (tokenize-data '(EQU (COLOR TABLE) ?))) 2)) (first '(?)))