From 0428d983d9549e5855c621fd0b2d6f08f77611e1 Mon Sep 17 00:00:00 2001 From: Michiel Borkent Date: Fri, 19 Nov 2021 21:46:16 +0100 Subject: [PATCH] update to newest sci --- sci | 2 +- src/babashka/impl/fs.clj | 7 ++--- src/babashka/impl/rewrite_clj.clj | 48 ++++--------------------------- 3 files changed, 8 insertions(+), 49 deletions(-) diff --git a/sci b/sci index ad932d30..78dc639a 160000 --- a/sci +++ b/sci @@ -1 +1 @@ -Subproject commit ad932d30aeddf7e18802622a38dc01aaaa54e768 +Subproject commit 78dc639a7f2d2420b2ccf7b90986778cfc2f20ae diff --git a/src/babashka/impl/fs.clj b/src/babashka/impl/fs.clj index 3281a322..a6471329 100644 --- a/src/babashka/impl/fs.clj +++ b/src/babashka/impl/fs.clj @@ -1,9 +1,6 @@ (ns babashka.impl.fs - (:require [babashka.fs :as fs] + (:require [babashka.fs] [sci.core :as sci])) -(def current-file (fs/file (fs/absolutize (fs/path "src" *file*)))) - (def fs-namespace - (sci/copy-ns 'babashka.fs (sci/create-ns 'babashka.fs))) - + (sci/copy-ns babashka.fs (sci/create-ns 'babashka.fs))) diff --git a/src/babashka/impl/rewrite_clj.clj b/src/babashka/impl/rewrite_clj.clj index 6b7fddf8..e7386805 100644 --- a/src/babashka/impl/rewrite_clj.clj +++ b/src/babashka/impl/rewrite_clj.clj @@ -13,55 +13,17 @@ (def zns (sci/create-ns 'rewrite-clj.zip 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 - (make-ns 'rewrite-clj.node nns)) + (sci/copy-ns rewrite-clj.node nns)) (def parser-namespace - (make-ns 'rewrite-clj.parser pns)) + (sci/copy-ns rewrite-clj.parser pns)) (def paredit-namespace - (make-ns 'rewrite-clj.paredit pens)) + (sci/copy-ns rewrite-clj.paredit pens)) (def zip-namespace - (make-ns 'rewrite-clj.zip zns)) + (sci/copy-ns rewrite-clj.zip zns)) (def subedit-namespace - (make-ns 'rewrite-clj.zip.subedit zsns)) + (sci/copy-ns rewrite-clj.zip.subedit zsns))