From dc5b4e60b88b9183e40a2427ef91b64c45c42ac3 Mon Sep 17 00:00:00 2001 From: Meikel Brandmeyer Date: Tue, 23 Jun 2009 22:39:19 +0200 Subject: Move metadata in vector-zip and seq-zip Fixes #134 Signed-off-by: Chouser --- src/clj/clojure/zip.clj | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/clj/clojure/zip.clj b/src/clj/clojure/zip.clj index 81b09060..00cc3be5 100644 --- a/src/clj/clojure/zip.clj +++ b/src/clj/clojure/zip.clj @@ -31,12 +31,18 @@ (defn seq-zip "Returns a zipper for nested sequences, given a root sequence" [root] - (zipper seq? identity (fn [node children] children) root)) + (zipper seq? + identity + (fn [node children] (with-meta children (meta node))) + root)) (defn vector-zip "Returns a zipper for nested vectors, given a root vector" [root] - (zipper vector? seq (fn [node children] (apply vector children)) root)) + (zipper vector? + seq + (fn [node children] (with-meta (vec children) (meta node))) + root)) (defn xml-zip "Returns a zipper for xml elements (as from xml/parse), -- cgit v1.2.3-18-g5258