30 lines
924 B
Clojure
30 lines
924 B
Clojure
(ns aaaa-this-has-to-be-first.because-patches
|
|
;; we need pprint loaded first, it patches pprint to not bloat the GraalVM binary
|
|
(:require [babashka.impl.patches.datafy]
|
|
[babashka.impl.pprint]))
|
|
|
|
;; Enable this for scanning requiring-resolve usage:
|
|
;; ---
|
|
;; (def old-requiring-resolve requiring-resolve)
|
|
|
|
;; (defmacro static-requiring-resolve [sym]
|
|
;; (prn :sym sym)
|
|
;; `(old-requiring-resolve ~sym))
|
|
|
|
;; (alter-var-root #'requiring-resolve (constantly @#'static-requiring-resolve))
|
|
;; (doto #'requiring-resolve (.setMacro))
|
|
;; ---
|
|
|
|
;; ((requiring-resolve 'clojure.pprint/pprint) (range 20))
|
|
|
|
;; Enable this for detecting literal usages of require
|
|
;; ---
|
|
;; (def old-require require)
|
|
|
|
;; (defmacro static-require [& syms]
|
|
;; (when (meta &form)
|
|
;; (prn :require &form ))
|
|
;; `(old-require ~@syms))
|
|
;; (alter-var-root #'require (constantly @#'static-require))
|
|
;; (doto #'require (.setMacro))
|
|
;; ---
|