A quick follow-up - if I use s/assert instead of s/valid you can see the
problem with the s/or tag (:b in this case) getting into the assertion val
(s/assert (s/and (s/or :a (s/and #(empty? (::data %))
#(empty? (::path %)))
:b #(= (::val %) (get-in (::data %) (::path %))))
(s/keys :req [::val ::data ::path]))
{::data [:zob] ::path [0] ::val :zob})
Error: Spec assertion failed
val: [:b {:clarity.cursors/data [:zob], :clarity.cursors/path [0],
:clarity.cursors/val :zob}] fails predicate: map?
:cljs.spec/failure :assertion-failed
--
Note that posts from new members are moderated - please be patient with your
first post.
---
You received this message because you are subscribed to the Google Groups
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/clojurescript.