clojure.walk/stringify-keys
レコード インスタンスを含む可能性のあるマップを呼び出そうとしています。stringify-keys は再帰的であるため、( (map? record-var)
true であるため) 私のレコードのキーを変換しようとすると、エラーが発生します。var が単なる Clojure マップではなくレコードであるかどうかを判断する方法はありますか? stringify-keys
レコード対応の独自の実装を提供したいと思います。
の現在の実装でstringify-keys
は、次のことが発生します。
(use '[clojure.walk :only [stringify-keys]])
(defrecord Rec [x])
(let [record (Rec. "foo")
params {:x "x" :rec record}]
(stringify-keys params))
これにより、次の例外が発生します: UnsupportedOperationException Can't create empty: user.Rec user.Rec (NO_SOURCE_FILE:1)