diff options
-rw-r--r-- | src/clj/clojure/core.clj | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/clj/clojure/core.clj b/src/clj/clojure/core.clj index ffd3edde..c928e4f7 100644 --- a/src/clj/clojure/core.clj +++ b/src/clj/clojure/core.clj @@ -3196,7 +3196,9 @@ (def ^:dynamic ^{:private true} print-initialized false) -(defmulti print-method (fn [x writer] (type x))) +(defmulti print-method (fn [x writer] + (let [t (get (meta x) :type)] + (if (keyword? t) t (class x))))) (defmulti print-dup (fn [x writer] (class x))) (defn pr-on |