From 4fc04b3afee0f496217a3243a75f75d51d5b64f1 Mon Sep 17 00:00:00 2001 From: Zach Smith Date: Sat, 27 Feb 2021 11:59:01 -0500 Subject: [PATCH] Add render some --- src/generators.janet | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/generators.janet b/src/generators.janet index 596411c..7a64756 100644 --- a/src/generators.janet +++ b/src/generators.janet @@ -34,6 +34,22 @@ (array/push res [:write path contents])))) (:send parent [:res spec-name res]))) +(defn- render-some-generator + [data spec-name site-selector path-generator renderer] + (fn [parent] + (set-cxt! spec-name) + + (threads/print "Generating path for " spec-name "...") + (def res @[]) + + (let [item (data site-selector)] + (unless (and item (item :path)) + (error/copy-error spec-name site-selector item)) + (let [path (apply-path path-generator [data item] :di) + contents (apply-renderer renderer [data item] :di)] + (array/push res [:write path contents]))) + (:send parent [:res spec-name res]))) + (defn- render-generator [data spec-name path-generator renderer] (fn [parent] @@ -64,6 +80,7 @@ (array/push res [:copy from to])))) (:send parent [:res spec-name res]))) + (defn- copy-some-generator [data spec-name site-selector path-generator] (fn [parent] @@ -103,6 +120,15 @@ site-selector path-generator) + {:some site-selector + :dest path-generator + :out renderer} + (render-some-generator data + spec-name + site-selector + path-generator + renderer) + {:dest path-generator :out renderer} (render-generator data -- 2.30.2