Flatten nested lets

This commit is contained in:
Tommi Reiman 2017-08-09 10:36:11 +03:00
parent 32598f0e56
commit 33e3658a79

View file

@ -34,14 +34,14 @@
(walk-one [pacc macc routes] (walk-one [pacc macc routes]
(if (vector? (first routes)) (if (vector? (first routes))
(walk-many pacc macc routes) (walk-many pacc macc routes)
(let [[path & [maybe-meta :as args]] routes] (let [[path & [maybe-meta :as args]] routes
(let [[meta childs] (if (vector? maybe-meta) [meta childs] (if (vector? maybe-meta)
[{} args] [{} args]
[maybe-meta (rest args)]) [maybe-meta (rest args)])
macc (into macc (expand meta))] macc (into macc (expand meta))]
(if (seq childs) (if (seq childs)
(walk-many (str pacc path) macc childs) (walk-many (str pacc path) macc childs)
[[(str pacc path) macc]])))))] [[(str pacc path) macc]]))))]
(walk-one path meta data))) (walk-one path meta data)))
(defn map-meta [f routes] (defn map-meta [f routes]