Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 297b2cc

Browse files
committedJun 15, 2023
Make the set of debugging reader macros extensible
1 parent 2024bf4 commit 297b2cc

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed
 

‎src/cider/nrepl/middleware/debug.clj

+6-2
Original file line numberDiff line numberDiff line change
@@ -665,6 +665,10 @@ this map (identified by a key), and will `dissoc` it afterwards."}
665665
(eval form1)))
666666
(throw e))))))
667667

668+
(def ^:dynamic *debug-data-readers*
669+
"Reader macros like #dbg which cause code to be instrumented when present."
670+
'#{dbg exn dbgexn break light})
671+
668672
;;; ## Middleware
669673
(defn- maybe-debug
670674
"Return msg, prepared for debugging if code contains debugging macros."
@@ -676,8 +680,8 @@ this map (identified by a key), and will `dissoc` it afterwards."}
676680
fake-reader (fn [x] (reset! has-debug? true) x)]
677681
(binding [*ns* (find-ns (symbol (or ns "user")))
678682
*data-readers* (->> (repeat fake-reader)
679-
(interleave '[dbg dbg! break break! light])
680-
(apply assoc *data-readers*))]
683+
(zipmap *debug-data-readers*)
684+
(merge *data-readers*))]
681685
(try
682686
;; new-line in REPL always throws; skip for debug convenience
683687
(when (> (count code) 3)

0 commit comments

Comments
 (0)
Please sign in to comment.