File tree Expand file tree Collapse file tree 9 files changed +68
-23
lines changed
src/cider/nrepl/middleware Expand file tree Collapse file tree 9 files changed +68
-23
lines changed Original file line number Diff line number Diff line change 1
1
(ns cider.nrepl.middleware.clojuredocs
2
2
(:require
3
+ [cider.nrepl.middleware.util :as util]
3
4
[cider.nrepl.middleware.util.error-handling :refer [with-safe-transport]]
4
- [orchard.clojuredocs :as docs]
5
- [orchard.misc :as misc]))
5
+ [orchard.clojuredocs :as docs]))
6
6
7
7
(defn- clojuredocs-lookup-reply [{:keys [export-edn-url ns symbol]}]
8
8
(if-let [doc (if export-edn-url
9
9
(docs/find-doc ns symbol export-edn-url)
10
10
(docs/find-doc ns symbol))]
11
- {:clojuredocs (misc /transform-value doc)}
11
+ {:clojuredocs (util /transform-value doc)}
12
12
{:status :no-document }))
13
13
14
14
(defn clojuredocs-refresh-cache-reply [{:keys [export-edn-url]}]
Original file line number Diff line number Diff line change 4
4
(:require
5
5
[cider.nrepl.middleware.inspect :refer [swap-inspector!]]
6
6
[cider.nrepl.middleware.stacktrace :as stacktrace]
7
+ [cider.nrepl.middleware.util :as util]
7
8
[cider.nrepl.middleware.util.cljs :as cljs]
8
9
[cider.nrepl.middleware.util.instrument :as ins]
9
10
[cider.nrepl.middleware.util.nrepl :refer [notify-client]]
14
15
[nrepl.transport :as transport]
15
16
[orchard.info :as info]
16
17
[orchard.inspect :as inspect]
17
- [orchard.meta :as m]
18
- [orchard.misc :as misc])
18
+ [orchard.meta :as m])
19
19
(:import
20
20
[clojure.lang Compiler$LocalBinding]))
21
21
@@ -396,7 +396,7 @@ this map (identified by a key), and will `dissoc` it afterwards."}
396
396
[v]
397
397
(when-not (::instrumented (meta v))
398
398
(when-let [{:keys [ns file form] :as var-meta} (m/var-code v)]
399
- (let [full-path (misc /transform-value (:file (info/file-info file)))]
399
+ (let [full-path (util /transform-value (:file (info/file-info file)))]
400
400
(binding [*ns* (find-ns ns )
401
401
*file* file
402
402
*msg* (-> *msg*
@@ -634,7 +634,7 @@ this map (identified by a key), and will `dissoc` it afterwards."}
634
634
(->> (all-ns )
635
635
(map #(cons (ns-name %) (ins/list-instrumented-defs %)))
636
636
(filter second)
637
- misc /transform-value
637
+ ( util /transform-value)
638
638
(response-for msg :status :done :list )
639
639
(transport/send (:transport msg))))
640
640
Original file line number Diff line number Diff line change 1
1
(ns cider.nrepl.middleware.info
2
2
(:require
3
+ [cider.nrepl.middleware.util :as util]
3
4
[cider.nrepl.middleware.util.cljs :as cljs]
4
5
[cider.nrepl.middleware.util.error-handling :refer [with-safe-transport]]
5
6
[clojure.java.io :as io]
44
45
(info/javadoc-info path)))
45
46
format-nested
46
47
blacklist
47
- u /transform-value))))
48
+ util /transform-value))))
48
49
49
50
(defn info
50
51
[{:keys [ns symbol class member] :as msg}]
Original file line number Diff line number Diff line change 1
1
(ns cider.nrepl.middleware.ns
2
2
(:refer-clojure :exclude [ns-aliases])
3
3
(:require
4
+ [cider.nrepl.middleware.util :as util]
4
5
[cider.nrepl.middleware.util.cljs :as cljs]
5
6
[cider.nrepl.middleware.util.coerce :as util.coerce]
6
7
[cider.nrepl.middleware.util.error-handling :refer [with-safe-transport]]
7
8
[cider.nrepl.middleware.util.meta :as um]
8
- [orchard.info :as info]
9
9
[orchard.cljs.analysis :as cljs-analysis]
10
+ [orchard.info :as info]
10
11
[orchard.misc :as u]
11
12
[orchard.namespace :as ns ]
12
13
[orchard.query :as query]))
107
108
108
109
(defn- ns-aliases-clj [ns ]
109
110
(->> (symbol ns )
110
- clojure.core/ns-aliases
111
+ ( clojure.core/ns-aliases )
111
112
(u/update-vals ns-name)
112
- u /transform-value))
113
+ ( util /transform-value) ))
113
114
114
115
(defn- ns-aliases-cljs [env ns ]
115
116
(->> (cljs-analysis/ns-aliases env ns )
116
117
(remove (fn [[k v]] (= k v)))
117
118
(into {})
118
- u /transform-value))
119
+ ( util /transform-value) ))
119
120
120
121
(defn ns-aliases [{:keys [ns ] :as msg}]
121
122
(if-let [cljs-env (cljs/grab-cljs-env msg)]
Original file line number Diff line number Diff line change 1
1
(ns cider.nrepl.middleware.resource
2
2
(:require
3
+ [cider.nrepl.middleware.util :as util]
3
4
[cider.nrepl.middleware.util.error-handling :refer [with-safe-transport]]
4
- [orchard.misc :as u]
5
5
[orchard.resource :as resource]))
6
6
7
7
(defn handle-resource [handler msg]
8
8
(with-safe-transport handler msg
9
9
" resource" {:resource-path (resource/resource-path (:name msg))}
10
- " resources-list" {:resources-list (u /transform-value (resource/resource-maps ))}))
10
+ " resources-list" {:resources-list (util /transform-value (resource/resource-maps ))}))
Original file line number Diff line number Diff line change 2
2
" Cause and stacktrace analysis for exceptions"
3
3
{:author " Jeff Valk" }
4
4
(:require
5
+ [cider.nrepl.middleware.util :as util]
5
6
[clojure.repl :as repl]
6
7
[clojure.set :as set]
7
8
[clojure.string :as str]
58
59
(str " ." (last (.split ^String (:file frame)
59
60
" \\ ." )))
60
61
path->url
61
- u /transform-value))
62
+ util /transform-value))
62
63
63
64
(defn analyze-fn
64
65
" Add namespace, fn, and var to the frame map when the source is a Clojure
78
79
:file-url (or (some-> (info/info* {:ns 'user :sym (symbol ns fn )})
79
80
:file
80
81
path->url
81
- u /transform-value)
82
- (u /transform-value (frame->url frame)))))
82
+ util /transform-value)
83
+ (util /transform-value (frame->url frame)))))
83
84
(assoc frame :file-url (some->
84
85
(java/resolve-symbol 'user
85
86
(symbol (:name frame)))
86
87
:file
87
88
path->url
88
- u /transform-value))))
89
+ util /transform-value))))
89
90
90
91
(defn analyze-file
91
92
" Associate the file type (extension) of the source file to the frame map, and
207
208
:file (:clojure.error/source location)
208
209
:file-url (some-> (:clojure.error/source location)
209
210
path->url
210
- u /transform-value)
211
+ util /transform-value)
211
212
:path (relative-path (:clojure.error/source location))
212
213
:line (:clojure.error/line location)
213
214
:column (:clojure.error/column location))
218
219
:file file
219
220
:file-url (some-> file
220
221
path->url
221
- u /transform-value)
222
+ util /transform-value)
222
223
:path (relative-path file)
223
224
:line (Integer/parseInt line)
224
225
:column (Integer/parseInt column))))
Original file line number Diff line number Diff line change 4
4
(:require
5
5
[cider.nrepl.middleware.stacktrace :as st]
6
6
[cider.nrepl.middleware.test.extensions :as extensions]
7
+ [cider.nrepl.middleware.util :as util]
7
8
[cider.nrepl.middleware.util.coerce :as util.coerce]
8
9
[clojure.pprint :as pp]
9
10
[clojure.test :as test]
283
284
test-var-query
284
285
stringify-msg)]
285
286
(reset! results (:results report))
286
- (t/send transport (response-for msg (u /transform-value report))))
287
+ (t/send transport (response-for msg (util /transform-value report))))
287
288
(catch clojure.lang.ExceptionInfo e
288
289
(let [d (ex-data e)]
289
290
(if (::util.coerce/id d)
323
324
{} @results)
324
325
report (test-nss nss)]
325
326
(reset! results (:results report))
326
- (t/send transport (response-for msg (u /transform-value report))))))
327
+ (t/send transport (response-for msg (util /transform-value report))))))
327
328
(fn []
328
329
(t/send transport (response-for msg :status :done ))))))
329
330
Original file line number Diff line number Diff line change 2
2
" State tracker for client sessions."
3
3
{:author " Artur Malabarba" }
4
4
(:require
5
+ [cider.nrepl.middleware.util :as util]
5
6
[cider.nrepl.middleware.util.cljs :as cljs]
6
7
[cider.nrepl.middleware.util.meta :as um]
7
8
[cljs-tooling.util.analysis :as cljs-ana]
209
210
(try (->> (response-for
210
211
msg :status :state
211
212
:repl-type (if cljs :cljs :clj )
212
- :changed-namespaces (u /transform-value changed-ns-map))
213
+ :changed-namespaces (util /transform-value changed-ns-map))
213
214
(transport-send-fn (:transport msg)))
214
215
; ; We run async, so the connection might have been closed in
215
216
; ; the mean time.
Original file line number Diff line number Diff line change
1
+ (ns cider.nrepl.middleware.util
2
+ (:require
3
+ [clojure.java.io :as io]
4
+ [clojure.string :as str]))
5
+
6
+ (defmulti transform-value " Transform a value for output" type )
7
+
8
+ (defmethod transform-value :default [v] (str v))
9
+
10
+ (defmethod transform-value Number [v] v )
11
+
12
+ (defmethod transform-value nil [v] nil )
13
+
14
+ (defmethod transform-value java.io.File
15
+ [v]
16
+ (.getAbsolutePath ^java.io.File v))
17
+
18
+ (defmethod transform-value clojure.lang.Sequential
19
+ [v]
20
+ (list* (map transform-value v)))
21
+
22
+ (defmethod transform-value clojure.lang.Symbol
23
+ [v]
24
+ (let [[the-ns the-name] [(namespace v) (name v)]]
25
+ (if the-ns
26
+ (str the-ns " /" the-name)
27
+ the-name)))
28
+
29
+ (defmethod transform-value clojure.lang.Keyword
30
+ [v]
31
+ (transform-value (.sym ^clojure.lang.Keyword v)))
32
+
33
+ (defmethod transform-value clojure.lang.Associative
34
+ [m]
35
+ (->> (for [[k v] m] ; bencode keys must be strings
36
+ [(str (transform-value k)) (transform-value v)])
37
+ (into {})))
38
+
39
+ ; ; handles vectors
40
+ (prefer-method transform-value clojure.lang.Sequential clojure.lang.Associative)
You can’t perform that action at this time.
0 commit comments