             [clojure.java.io :as io])
   (:import (java.io LineNumberReader PushbackReader File)))
 
-(declare namespace-info analyzed-data-of-def analyze-cljs-ns!)
+(declare ensure-ns-analyzed! analyzed-data-of-def analyze-cljs-ns!)
 
 (defonce cljs-env (atom {}))
 

      (if-not (some-> e
                :compiler-env deref
                :cljs.analyzer/namespaces (get 'cljs.core))
        (namespace-info 'cljs.core (fm/find-file-for-ns-on-cp 'cljs.core)))
      e)))



  [sym & [file]]
  (let [ns-name (symbol (namespace sym))
        name (symbol (name sym))]

    (if-not (get-in ; in case ns data isn't there yet...
                    @(:compiler-env (ensure-default-cljs-env))
                    [:cljs.analyzer/namespaces ns-name])
      (ensure-ns-analyzed! ns-name))

    (some-> (ensure-default-cljs-env)
      :compiler-env deref
      :cljs.analyzer/namespaces (get ns-name)
