File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -328,7 +328,6 @@ present"
328328 (repl/evaluate-form renv (ana-api/empty-env ) " <cljs repl>"
329329 `(~(symbol (name main) " -main" ) ~@args))))
330330 (finally
331- (util/debug-prn " Tearing down" )
332331 (repl/tear-down renv)))))))))
333332
334333(defn- main-opt
Original file line number Diff line number Diff line change 636636 (set! *e e#)
637637 (throw e#))))))
638638
639+ (defn- init-wrap-fn [form]
640+ (cond
641+ (and (seq? form)
642+ (#{'ns 'require 'require-macros
643+ 'use 'use-macros 'import 'refer-clojure} (first form)))
644+ identity
645+
646+ ('#{*1 *2 *3 *e} form) (fn [x] `(cljs.core.pr-str ~x))
647+ :else
648+ (fn [x]
649+ `(cljs.core.pr-str ~x))))
650+
639651(defn eval-cljs
640652 " Given a REPL evaluation environment, an analysis environment, and a
641653 form, evaluate the form and return the result. The result is always the value
788800 (doseq [form (:forms init)]
789801 (eval-cljs renv (ana/empty-env ) form))
790802 :eval-forms
791- (binding [*repl-opts* (merge *repl-opts* {:def-emits-var true })]
803+ (binding [*repl-opts* (merge *repl-opts* {:def-emits-var true :wrap init-wrap-fn })]
792804 (doseq [form (:forms init)]
793- (let [value (eval-cljs renv (ana/empty-env ) form)]
805+ (let [value (eval-cljs renv (ana/empty-env ) form *repl-opts* )]
794806 (when-not (repl-nil? value)
795807 (println value)))))
796808 :init-script
You can’t perform that action at this time.
0 commit comments