4
我正试图在我正在写的clojure程序中实现一个记录协议。我得到的错误是“不支持的绑定表单”。为什么在clojure中实现协议时会出现“Unsupported binding form”错误?
(defprotocol query-rows
(query-text [table])
(trans-cols [table rows])
(set-max [table] [table id]))
(defrecord Submissions [data max-id]
query-rows
(query-text [table]
(gen-query-text "SubmissionId" "Valid" "Submission"))
(trans-cols [table rows]
(let
[trans-data
(->>
rows
(trans-col #(if % 1 0) :valid :valid_count)
(trans-col #(if % 0 1) :valid :non_valid_count)
(trans-col format-sql-date :createdon :date))]
(assoc table :data trans-data)))
(set-max
([table]
(when-let [id (gen-get-max "SubmissionAgg2")]
(assoc table :max-id id)))
([table id] (assoc table :max-id id))))
“set-max”函数是抛出错误的东西。我有一种感觉,我试图错误地使用多个参数。有谁知道我做错了什么?
太棒了,谢谢。 –