我使用pr-str序列化一个可能包含带有自动命名空间的关键字的数据结构。
我想在序列化之前将数据结构减少,不包含自动关键字,但不知道如何检测它?
(def x ::outbound)
(pr-str x) => "::outbound"
(edn/read-string "::outbound") => exception
(namespace x) => "current-namespace"
那么,有没有办法知道x是否具有自动命名空间?
谢谢
抱歉 - 没在repl上运行就提了这个问题 - 这里有一个正确的例子
(keyword ":out") => ::out
(pr-str (keyword ":out")) => "::out"
(edn/read-string (pr-str (keyword ":out"))) =>
Execution error at user/eval93457 (form-init751239350220000799.clj:1).
Invalid token: ::out