Is it possible to both destructure and rename keys in one go?
Consider this:
(let [{:keys [response]} {:response 1}]
(println response))
Run Code Online (Sandbox Code Playgroud)
However, if I want to instead refer to 1 as my-response, I have to do something like:
(let [{:keys [my-response]} (clojure.set/rename-keys {:response 1} {:response :my-response})]
(println my-response))
Run Code Online (Sandbox Code Playgroud)
Obviously this does not work with defn destructuring.
Is there any way in Clojure to both destructure and rename keys?
Erw*_*ers 12
在不使用以下情况下使用解构:keys:
(let [{my-response :response} {:response 1}]
(println my-response))
Run Code Online (Sandbox Code Playgroud)
{:keys [response]}是的语法糖{response :response}。