Skip to content

Commit 11c3fae

Browse files
committed
add get-tagged helper, fix zen/op schema
1 parent 196f702 commit 11c3fae

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

pkg/zen.edn

+4-1
Original file line numberDiff line numberDiff line change
@@ -444,9 +444,12 @@
444444
{:zen/tags #{zen/tag zen/schema}
445445
:zen/desc "zen system operation -> (op name config request & [session])"
446446
:type zen/map
447+
:values {:type zen/any}
447448
:keys {:config {:zen/desc "late bound config map"
448449
:type zen/symbol
449-
:tags #{binding}}}}
450+
:tags #{binding}}
451+
:params {:type zen/any}
452+
:result {:type zen/any}}}
450453

451454
engine
452455
{:zen/tags #{zen/tag zen/schema}

src/zen/core.clj

+7-2
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@
2424
(defn get-tag [ztx sym]
2525
(zen.store/get-tag ztx sym))
2626

27+
(defn get-tagged [ztx sym]
28+
(->> (zen.store/get-tag ztx sym)
29+
(mapv (fn [t] (get-symbol ztx t)))))
30+
2731
(defn validate [ztx symbols data]
2832
(-> (v2/validate ztx symbols data)
2933
(select-keys [:errors :warnings :effects])))
@@ -169,9 +173,10 @@
169173
(error ztx 'zen/start-missed {:op op-name})))
170174

171175
(defn start-system [ztx & [entry-point]]
172-
(let [system (get-symbol ztx entry-point)]
176+
(if-let [system (get-symbol ztx entry-point)]
173177
(doseq [start-fn (:start system)]
174-
(start-call ztx start-fn))))
178+
(start-call ztx start-fn))
179+
(error ztx 'zen/system {:message (str "No entry point " entry-point)})))
175180

176181
(defn stop-system [ztx]
177182
(doseq [op-name (->>

0 commit comments

Comments
 (0)