update to newest sci
This commit is contained in:
parent
1ebe142655
commit
0428d983d9
3 changed files with 8 additions and 49 deletions
2
sci
2
sci
|
|
@ -1 +1 @@
|
||||||
Subproject commit ad932d30aeddf7e18802622a38dc01aaaa54e768
|
Subproject commit 78dc639a7f2d2420b2ccf7b90986778cfc2f20ae
|
||||||
|
|
@ -1,9 +1,6 @@
|
||||||
(ns babashka.impl.fs
|
(ns babashka.impl.fs
|
||||||
(:require [babashka.fs :as fs]
|
(:require [babashka.fs]
|
||||||
[sci.core :as sci]))
|
[sci.core :as sci]))
|
||||||
|
|
||||||
(def current-file (fs/file (fs/absolutize (fs/path "src" *file*))))
|
|
||||||
|
|
||||||
(def fs-namespace
|
(def fs-namespace
|
||||||
(sci/copy-ns 'babashka.fs (sci/create-ns 'babashka.fs)))
|
(sci/copy-ns babashka.fs (sci/create-ns 'babashka.fs)))
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,55 +13,17 @@
|
||||||
(def zns (sci/create-ns 'rewrite-clj.zip nil))
|
(def zns (sci/create-ns 'rewrite-clj.zip nil))
|
||||||
(def zsns (sci/create-ns 'rewrite-clj.zip.subedit nil))
|
(def zsns (sci/create-ns 'rewrite-clj.zip.subedit nil))
|
||||||
|
|
||||||
#_(defmacro copy-var
|
|
||||||
"Copies contents from var `sym` to a new sci var. The value `ns` is an
|
|
||||||
object created with `sci.core/create-ns`."
|
|
||||||
([sym ns]
|
|
||||||
`(let [ns# ~ns
|
|
||||||
var# (var ~sym)
|
|
||||||
val# (deref var#)
|
|
||||||
m# (-> var# meta)
|
|
||||||
ns-name# (vars/getName ns#)
|
|
||||||
name# (:name m#)
|
|
||||||
name-sym# (symbol (str ns-name#) (str name#))
|
|
||||||
new-m# {:doc (:doc m#)
|
|
||||||
:name name#
|
|
||||||
:arglists (:arglists m#)
|
|
||||||
:ns ns#}]
|
|
||||||
(cond (:dynamic m#)
|
|
||||||
(new-dynamic-var name# val# new-m#)
|
|
||||||
(:macro m#)
|
|
||||||
(new-macro-var name# val# new-m#)
|
|
||||||
:else (new-var name# val# new-m#)))))
|
|
||||||
|
|
||||||
(defn make-ns [ns sci-ns]
|
|
||||||
(reduce (fn [ns-map [var-name var]]
|
|
||||||
(let [m (meta var)
|
|
||||||
no-doc (:no-doc m)
|
|
||||||
doc (:doc m)
|
|
||||||
arglists (:arglists m)]
|
|
||||||
(if no-doc ns-map
|
|
||||||
(assoc ns-map var-name
|
|
||||||
(sci/new-var (symbol var-name) @var
|
|
||||||
(cond-> {:ns sci-ns
|
|
||||||
:name (:name m)}
|
|
||||||
(:macro m) (assoc :macro true)
|
|
||||||
doc (assoc :doc doc)
|
|
||||||
arglists (assoc :arglists arglists)))))))
|
|
||||||
{}
|
|
||||||
(ns-publics ns)))
|
|
||||||
|
|
||||||
(def node-namespace
|
(def node-namespace
|
||||||
(make-ns 'rewrite-clj.node nns))
|
(sci/copy-ns rewrite-clj.node nns))
|
||||||
|
|
||||||
(def parser-namespace
|
(def parser-namespace
|
||||||
(make-ns 'rewrite-clj.parser pns))
|
(sci/copy-ns rewrite-clj.parser pns))
|
||||||
|
|
||||||
(def paredit-namespace
|
(def paredit-namespace
|
||||||
(make-ns 'rewrite-clj.paredit pens))
|
(sci/copy-ns rewrite-clj.paredit pens))
|
||||||
|
|
||||||
(def zip-namespace
|
(def zip-namespace
|
||||||
(make-ns 'rewrite-clj.zip zns))
|
(sci/copy-ns rewrite-clj.zip zns))
|
||||||
|
|
||||||
(def subedit-namespace
|
(def subedit-namespace
|
||||||
(make-ns 'rewrite-clj.zip.subedit zsns))
|
(sci/copy-ns rewrite-clj.zip.subedit zsns))
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue