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

format-date

added in 3.0

(format-date v x)

helper function for formatting date

override?

added in 3.0

(override? x)

implements std.pretty.protocol/IOverride

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)