 
 (defn ns-interns
   "Given compiler state and namespace symbol return all the vars in the
-  AST. Analagous to clojure.core/ns-interns but returns var analysis
-  maps not vars (beware, it can be a lot of data)."
+  AST.
+
+  Analagous to cljs.analyzer/ns-interns, returns var analysis maps not
+  vars.
+
+  Beware, it can be a lot of data."
   [state ns]
   {:pre [(symbol? ns)]}
   (merge

  {:pre [(symbol? ns)]}
  (get-in state [:cljs.analyzer/namespaces ns]))

;; from https://github.com/mfikes/planck/commit/fe9e7b3ee055930523af1ea3ec9b53407ed2b8c8
(defn dissoc-ns
  "Given compiler state and namespace symbol, dissoc the ns from the
  AST.
  This is commonly passed to swap! (e.g.: (swap! st dissoc-ns))."
  [state ns]
  {:pre [(symbol? ns)]}
  (update-in state [:cljs.analyzer/namespaces] dissoc ns))

(ns replumb.ast
  (:refer-clojure :exclude [namespace ns-publics ns-interns])
  (:require goog.string))

(defn known-namespaces
  "Given a compiler state, return the seq of namespace symbols currently
