std.pretty.edn
class->edn
added in 3.0
(class->edn c)converts a type to edn
(class->edn (type (byte-array []))) => “[B”
(class->edn (type (into-array String []))) => “[Ljava.lang.String;”
(class->edn (type :keyword)) => ’clojure.lang.Keyword
edn
added in 3.0
(edn x)converts an object to a tagged literal
(edn 1) => 1
(edn nil) => nil
(edn (java.lang.ClassLoader/getPlatformClassLoader)) => clojure.lang.TaggedLiteral
tagged-object
added in 3.0
(tagged-object o rep)converts a type to a tagged literal
(tagged-object (java.lang.ClassLoader/getPlatformClassLoader) :classloader) ;;=> #object jdk.internal.loader.ClassLoaders$PlatformClassLoader “0x73698a00” :classloader => clojure.lang.TaggedLiteral
visit
added in 3.0
(visit visitor x)a extensible walker for printing `edn`` data
(visit (printer/canonical-printer) (Thread/currentThread)) => (contains-in [:span “#object” " " [:group “[” :align coll? “]”]])
visit-edn
added in 3.0
(visit-edn visitor x)creates a form for a non-edn element
(visit-edn (printer/canonical-printer) (doto (java.util.ArrayList.) (.add 1) (.add 2) (.add 3))) => [:group “[” [:align “1” " " “2” " " “3”] “]”]
visit-meta
added in 3.0
(visit-meta visitor meta x)creates a form for a meta (visit-meta (printer/canonical-printer) {:a 1} {}) => [:group “{” :align () “}”]
visit-seq
added in 3.0
(visit-seq visitor x)creates a form for a seq
(visit-seq (printer/canonical-printer) 1 2 3 4) => [:group “(” [:align [“1” " " “2” " " “3” " " “4”]] “)”]
visit-tagged
added in 3.0
(visit-tagged visitor x)creates a form for a tagged literal
(visit-tagged (printer/canonical-printer) (tagged-literal ’hello 1 2 3)) => [:span “#hello” " " [:group “[” [:align “1” " " “2” " " “3”] “]”]]
visit-unknown
added in 3.0
(visit-unknown visitor x)creatse a form for an unknown element
(visit-unknown (printer/canonical-printer) (Thread/currentThread)) => (throws)