Skip to content

Commit

Permalink
[#1370] Simplify code
Browse files Browse the repository at this point in the history
  • Loading branch information
borkdude committed Sep 3, 2021
1 parent 0324718 commit 13066e4
Showing 1 changed file with 11 additions and 12 deletions.
23 changes: 11 additions & 12 deletions src/clj_kondo/impl/analyzer/potemkin.clj
Original file line number Diff line number Diff line change
@@ -1,25 +1,24 @@
(ns clj-kondo.impl.analyzer.potemkin
{:no-doc true}
(:refer-clojure :exclude [ns-name])
(:require [clj-kondo.impl.namespace :as namespace]
[clj-kondo.impl.utils :refer [token-node]]))
(:require [clj-kondo.impl.namespace :as namespace]))

(defn analyze-import-vars [ctx expr]
(let [ns-name (-> ctx :ns :name)
import-groups (next (:children expr))]
[{:type :import-vars
:used-namespaces
(for [g import-groups
:let [fqs-import? (qualified-ident? (:value g))
:let [gval (:value g)
fqs-import? (and gval (qualified-symbol? gval))
gchildren (:children g)
imported-ns (if fqs-import?
(token-node (symbol (namespace (:value g))))
(first (:children g)))
(symbol (namespace gval))
(:value (first gchildren)))
imported-vars (if fqs-import?
[(token-node (symbol (name (:value g))))]
(rest (:children g)))
imported-ns-sym (:value imported-ns)]]
[(symbol (name gval))]
(map :value (rest gchildren)))]]
(do (doseq [iv imported-vars]
(let [iv-sym (:value iv)]
(namespace/reg-var! ctx ns-name iv-sym expr {:imported-ns imported-ns-sym
:imported-var iv-sym})))
imported-ns-sym))}]))
(namespace/reg-var! ctx ns-name iv expr {:imported-ns imported-ns
:imported-var iv}))
imported-ns))}]))

0 comments on commit 13066e4

Please sign in to comment.