1 ;; Pretty printer a MAL object.
9 (str " " (spaces- (- indent 1)))
12 pp-seq- (fn* [obj indent]
13 (let* [xindent (+ 1 indent)]
14 (apply str (pp- (first obj) 0)
15 (map (fn* [x] (str "\n" (spaces- xindent)
19 pp-map- (fn* [obj indent]
22 kwidth (count (seq (str (first ks))))
23 vindent (+ 1 (+ kwidth kindent))]
24 (apply str (pp- (first ks) 0)
26 (pp- (get obj (first ks)) 0)
27 (map (fn* [k] (str "\n" (spaces- kindent)
30 (pp- (get obj k) vindent)))
35 (list? obj) (str "(" (pp-seq- obj indent) ")")
36 (vector? obj) (str "[" (pp-seq- obj indent) "]")
37 (map? obj) (str "{" (pp-map- obj indent) "}")
43 (println (pp- obj 0)))))