[nop] Move docstring resources

This commit is contained in:
Peter Taoussanis 2025-04-16 18:20:14 +02:00
parent e8f02ac13e
commit 32e8909e42
13 changed files with 24 additions and 24 deletions

View file

@ -246,7 +246,7 @@
(log! {:allow? true} \"Message 2\"))" (log! {:allow? true} \"Message 2\"))"
;; Used also for interop (tools.logging, SLF4J), etc. ;; Used also for interop (tools.logging, SLF4J), etc.
{:arglists (impl/signal-arglists :signal-allowed?)} {:arglists (impl/arglists :signal-allowed?)}
[& args] `(impl/signal-allowed? ~(args->opts args)))) [& args] `(impl/signal-allowed? ~(args->opts args))))
(comment (macroexpand '(signal-allowed? {:ns "my-ns"}))) (comment (macroexpand '(signal-allowed? {:ns "my-ns"})))
@ -254,8 +254,8 @@
#?(:clj #?(:clj
(defmacro signal! (defmacro signal!
"opts => allowed? / run result (value or throw)." "opts => allowed? / run result (value or throw)."
{:doc (impl/signal-docstring :signal!) {:doc (impl/docstring :signal!)
:arglists (impl/signal-arglists :signal!)} :arglists (impl/arglists :signal!)}
[& args] [& args]
(truss/keep-callsite (truss/keep-callsite
`(impl/signal! ~(args->opts args))))) `(impl/signal! ~(args->opts args)))))
@ -273,8 +273,8 @@
(let [base-opts {:kind :log, :level :info}] (let [base-opts {:kind :log, :level :info}]
(defmacro log!? (defmacro log!?
"?level + msg => allowed?" "?level + msg => allowed?"
{:doc (impl/signal-docstring :log!) {:doc (impl/docstring :log!)
:arglists (impl/signal-arglists :log!)} :arglists (impl/arglists :log!)}
([opts-or-msg ] `(impl/signal! ~(merge-or-assoc-opts base-opts &form :msg opts-or-msg))) ([opts-or-msg ] `(impl/signal! ~(merge-or-assoc-opts base-opts &form :msg opts-or-msg)))
([opts-or-level msg] `(impl/signal! ~(assoc (merge-or-assoc-opts base-opts &form :level opts-or-level) :msg msg)))))) ([opts-or-level msg] `(impl/signal! ~(assoc (merge-or-assoc-opts base-opts &form :level opts-or-level) :msg msg))))))
@ -283,8 +283,8 @@
#?(:clj #?(:clj
(defmacro log! (defmacro log!
"Like `log!?` but always returns nil." "Like `log!?` but always returns nil."
{:doc (impl/signal-docstring :log!) {:doc (impl/docstring :log!)
:arglists (impl/signal-arglists :log!)} :arglists (impl/arglists :log!)}
[& args] `(do ~(truss/keep-callsite `(log!? ~@args)) nil))) [& args] `(do ~(truss/keep-callsite `(log!? ~@args)) nil)))
(comment (:coords (with-signal (log! :info "My msg")))) (comment (:coords (with-signal (log! :info "My msg"))))
@ -293,8 +293,8 @@
(let [base-opts {:kind :event, :level :info}] (let [base-opts {:kind :event, :level :info}]
(defmacro event!? (defmacro event!?
"id + ?level => allowed? Note unique arg order: [x opts] rather than [opts x]!" "id + ?level => allowed? Note unique arg order: [x opts] rather than [opts x]!"
{:doc (impl/signal-docstring :event!) {:doc (impl/docstring :event!)
:arglists (impl/signal-arglists :event!)} :arglists (impl/arglists :event!)}
([ opts-or-id] `(impl/signal! ~(merge-or-assoc-opts base-opts &form :id opts-or-id))) ([ opts-or-id] `(impl/signal! ~(merge-or-assoc-opts base-opts &form :id opts-or-id)))
([id opts-or-level] `(impl/signal! ~(assoc (merge-or-assoc-opts base-opts &form :level opts-or-level) :id id)))))) ([id opts-or-level] `(impl/signal! ~(assoc (merge-or-assoc-opts base-opts &form :level opts-or-level) :id id))))))
@ -303,8 +303,8 @@
#?(:clj #?(:clj
(defmacro event! (defmacro event!
"Like `event!?` but always returns nil." "Like `event!?` but always returns nil."
{:doc (impl/signal-docstring :event!) {:doc (impl/docstring :event!)
:arglists (impl/signal-arglists :event!)} :arglists (impl/arglists :event!)}
[& args] `(do ~(truss/keep-callsite `(event!? ~@args)) nil))) [& args] `(do ~(truss/keep-callsite `(event!? ~@args)) nil)))
(comment (:coords (with-signal (event! ::my-id :info)))) (comment (:coords (with-signal (event! ::my-id :info))))
@ -313,8 +313,8 @@
(let [base-opts {:kind :trace, :level :info, :msg `impl/default-trace-msg}] (let [base-opts {:kind :trace, :level :info, :msg `impl/default-trace-msg}]
(defmacro trace! (defmacro trace!
"?id + run => run result (value or throw)." "?id + run => run result (value or throw)."
{:doc (impl/signal-docstring :trace!) {:doc (impl/docstring :trace!)
:arglists (impl/signal-arglists :trace!)} :arglists (impl/arglists :trace!)}
([opts-or-run] `(impl/signal! ~(merge-or-assoc-opts base-opts &form :run opts-or-run))) ([opts-or-run] `(impl/signal! ~(merge-or-assoc-opts base-opts &form :run opts-or-run)))
([opts-or-id run] `(impl/signal! ~(assoc (merge-or-assoc-opts base-opts &form :id opts-or-id) :run run)))))) ([opts-or-id run] `(impl/signal! ~(assoc (merge-or-assoc-opts base-opts &form :id opts-or-id) :run run))))))
@ -324,8 +324,8 @@
(let [base-opts {:kind :spy, :level :info, :msg `impl/default-trace-msg}] (let [base-opts {:kind :spy, :level :info, :msg `impl/default-trace-msg}]
(defmacro spy! (defmacro spy!
"?level + run => run result (value or throw)." "?level + run => run result (value or throw)."
{:doc (impl/signal-docstring :spy!) {:doc (impl/docstring :spy!)
:arglists (impl/signal-arglists :spy!)} :arglists (impl/arglists :spy!)}
([opts-or-run] `(impl/signal! ~(merge-or-assoc-opts base-opts &form :run opts-or-run))) ([opts-or-run] `(impl/signal! ~(merge-or-assoc-opts base-opts &form :run opts-or-run)))
([opts-or-level run] `(impl/signal! ~(assoc (merge-or-assoc-opts base-opts &form :level opts-or-level) :run run)))))) ([opts-or-level run] `(impl/signal! ~(assoc (merge-or-assoc-opts base-opts &form :level opts-or-level) :run run))))))
@ -335,8 +335,8 @@
(let [base-opts {:kind :error, :level :error}] (let [base-opts {:kind :error, :level :error}]
(defmacro error! (defmacro error!
"?id + error => given error." "?id + error => given error."
{:doc (impl/signal-docstring :error!) {:doc (impl/docstring :error!)
:arglists (impl/signal-arglists :error!)} :arglists (impl/arglists :error!)}
([opts-or-id error] `(error! ~(assoc (merge-or-assoc-opts base-opts &form :id opts-or-id) :error error))) ([opts-or-id error] `(error! ~(assoc (merge-or-assoc-opts base-opts &form :id opts-or-id) :error error)))
([opts-or-error] ([opts-or-error]
(let [opts (merge-or-assoc-opts base-opts &form :error opts-or-error) (let [opts (merge-or-assoc-opts base-opts &form :error opts-or-error)
@ -352,8 +352,8 @@
(let [base-opts {:kind :error, :level :error}] (let [base-opts {:kind :error, :level :error}]
(defmacro catch->error! (defmacro catch->error!
"?id + run => run value or ?catch-val." "?id + run => run value or ?catch-val."
{:doc (impl/signal-docstring :catch->error!) {:doc (impl/docstring :catch->error!)
:arglists (impl/signal-arglists :catch->error!)} :arglists (impl/arglists :catch->error!)}
([opts-or-id run] `(catch->error! ~(assoc (merge-or-assoc-opts base-opts &form :id opts-or-id) :run run))) ([opts-or-id run] `(catch->error! ~(assoc (merge-or-assoc-opts base-opts &form :id opts-or-id) :run run)))
([opts-or-run] ([opts-or-run]
(let [opts (merge-or-assoc-opts base-opts &form :run opts-or-run) (let [opts (merge-or-assoc-opts base-opts &form :run opts-or-run)
@ -395,7 +395,7 @@
uncaught JVM errors. uncaught JVM errors.
See `uncaught->handler!` and `error!` for details." See `uncaught->handler!` and `error!` for details."
{:arglists (impl/signal-arglists :uncaught->error!)} {:arglists (impl/arglists :uncaught->error!)}
([ ] (truss/keep-callsite `(uncaught->error! {}))) ([ ] (truss/keep-callsite `(uncaught->error! {})))
([opts-or-id] ([opts-or-id]
(let [opts (merge-or-assoc-opts base-opts &form :id opts-or-id)] (let [opts (merge-or-assoc-opts base-opts &form :id opts-or-id)]

View file

@ -371,13 +371,13 @@
(sigs/call-handlers! *sig-handlers* signal) (sigs/call-handlers! *sig-handlers* signal)
:dispatched)) :dispatched))
;;;; Signal API helpers ;;;; API helpers
#?(:clj (defmacro signal-docstring [ rname] (enc/slurp-resource (str "signal-docstrings/" (name rname) ".txt")))) #?(:clj (defmacro docstring [ rname] (enc/slurp-resource (str "docs/" (name rname) ".txt"))))
#?(:clj (defmacro defhelp [sym rname] `(enc/def* ~sym {:doc ~(eval `(signal-docstring ~rname))} "See docstring"))) #?(:clj (defmacro defhelp [sym rname] `(enc/def* ~sym {:doc ~(eval `(docstring ~rname))} "See docstring")))
#?(:clj #?(:clj
(defn signal-arglists [macro-id] (defn arglists [macro-id]
(case macro-id (case macro-id
:signal-allowed? ; opts => allowed? :signal-allowed? ; opts => allowed?