This commit is contained in:
Michiel Borkent 2022-06-08 14:09:04 +02:00
parent ed0875b52b
commit ecdf952b23
14 changed files with 53 additions and 55 deletions

View file

@ -2,11 +2,10 @@
{:no-doc true} {:no-doc true}
(:require [datascript.core :as d] (:require [datascript.core :as d]
[datascript.db :as db] [datascript.db :as db]
[sci.impl.namespaces :refer [copy-var]] [sci.core :as sci :refer [copy-var]]))
[sci.impl.vars :as vars]))
(def datascript-ns (vars/->SciNamespace 'datascript.core nil)) (def datascript-ns (sci/create-ns 'datascript.core nil))
(def datascript-db-ns (vars/->SciNamespace 'datascript.db nil)) (def datascript-db-ns (sci/create-ns 'datascript.db nil))
(def datascript-namespace (def datascript-namespace
{'create-conn (copy-var d/create-conn datascript-ns) {'create-conn (copy-var d/create-conn datascript-ns)

View file

@ -1,12 +1,13 @@
(ns babashka.impl.jdbc (ns babashka.impl.jdbc
{:no-doc true} {:no-doc true}
(:require [next.jdbc :as njdbc] (:require
[next.jdbc :as njdbc]
[next.jdbc.result-set :as rs] [next.jdbc.result-set :as rs]
[next.jdbc.sql :as sql] [next.jdbc.sql :as sql]
[sci.impl.namespaces :refer [copy-var macrofy]] [sci.core :as sci]
[sci.impl.vars :as vars])) [sci.impl.namespaces :refer [copy-var macrofy]]))
(def next-ns (vars/->SciNamespace 'next.jdbc nil)) (def next-ns (sci/create-ns 'next.jdbc nil))
(defn with-transaction (defn with-transaction
"Given a transactable object, gets a connection and binds it to `sym`, "Given a transactable object, gets a connection and binds it to `sym`,
@ -31,12 +32,12 @@
'transact (copy-var njdbc/transact next-ns) 'transact (copy-var njdbc/transact next-ns)
'with-transaction (macrofy 'with-transaction with-transaction next-ns)}) 'with-transaction (macrofy 'with-transaction with-transaction next-ns)})
(def sns (vars/->SciNamespace 'next.jdbc.sql nil)) (def sns (sci/create-ns 'next.jdbc.sql nil))
(def next-sql-namespace (def next-sql-namespace
{'insert-multi! (copy-var sql/insert-multi! sns)}) {'insert-multi! (copy-var sql/insert-multi! sns)})
(def rsns (vars/->SciNamespace 'next.jdbc.result-set nil)) (def rsns (sci/create-ns 'next.jdbc.result-set nil))
(def result-set-namespace (def result-set-namespace
{'as-maps (copy-var rs/as-maps rsns) {'as-maps (copy-var rs/as-maps rsns)

View file

@ -1,10 +1,9 @@
(ns babashka.impl.transit (ns babashka.impl.transit
(:require [cognitect.transit :as transit] (:require
[sci.impl.namespaces :refer [copy-var]] [cognitect.transit :as transit]
[sci.impl.vars :as vars])) [sci.core :as sci :refer [copy-var]]))
(def tns (sci/create-ns 'cognitect.transit nil))
(def tns (vars/->SciNamespace 'cognitect.transit nil))
(def transit-namespace (def transit-namespace
{'write (copy-var transit/write tns) {'write (copy-var transit/write tns)

View file

@ -12,7 +12,7 @@
(def xtns (sci/create-ns 'clojure.data.xml.tree nil)) (def xtns (sci/create-ns 'clojure.data.xml.tree nil))
(defn- clj-ns-name [ns] (defn- clj-ns-name [ns]
(cond (instance? sci.impl.vars.SciNamespace ns) (str ns) (cond (instance? sci.lang.Namespace ns) (str ns)
(keyword? ns) (name ns) (keyword? ns) (name ns)
:else (str ns))) :else (str ns)))

2
sci

@ -1 +1 @@
Subproject commit 15ef9bd19df0446c7fc7cc245d0d36c2503dc102 Subproject commit 7c04d1a5c0be084da520b6bafd1dda7053d06a43

View file

@ -1,10 +1,10 @@
(ns babashka.impl.bencode (ns babashka.impl.bencode
{:no-doc true} {:no-doc true}
(:require [bencode.core :as bencode] (:require
[sci.impl.namespaces :refer [copy-var]] [bencode.core :as bencode]
[sci.impl.vars :as vars])) [sci.core :as sci :refer [copy-var]]))
(def tns (vars/->SciNamespace 'bencode.core nil)) (def tns (sci/create-ns 'bencode.core nil))
(def bencode-namespace (def bencode-namespace
{'read-bencode (copy-var bencode/read-bencode tns) {'read-bencode (copy-var bencode/read-bencode tns)

View file

@ -1,10 +1,9 @@
(ns babashka.impl.cheshire (ns babashka.impl.cheshire
{:no-doc true} {:no-doc true}
(:require [cheshire.core :as json] (:require [cheshire.core :as json]
[sci.impl.namespaces :refer [copy-var]] [sci.core :as sci :refer [copy-var]]))
[sci.impl.vars :as vars]))
(def tns (vars/->SciNamespace 'cheshire.core nil)) (def tns (sci/create-ns 'cheshire.core nil))
(def cheshire-core-namespace (def cheshire-core-namespace
{'encode (copy-var json/encode tns) {'encode (copy-var json/encode tns)

View file

@ -2,7 +2,8 @@
{:no-doc true} {:no-doc true}
(:require [clojure.core.async :as async] (:require [clojure.core.async :as async]
[clojure.core.async.impl.protocols :as protocols] [clojure.core.async.impl.protocols :as protocols]
[sci.impl.namespaces :refer [copy-var macrofy]] [sci.core :as sci :refer [copy-var]]
[sci.impl.namespaces :refer [macrofy]]
[sci.impl.vars :as vars])) [sci.impl.vars :as vars]))
(def ^java.util.concurrent.Executor executor @#'async/thread-macro-executor) (def ^java.util.concurrent.Executor executor @#'async/thread-macro-executor)
@ -39,7 +40,7 @@
[_ _ bindings & body] [_ _ bindings & body]
(list 'clojure.core.async/thread (list* 'loop bindings body))) (list 'clojure.core.async/thread (list* 'loop bindings body)))
(def core-async-namespace (vars/->SciNamespace 'clojure.core.async nil)) (def core-async-namespace (sci/create-ns 'clojure.core.async nil))
(def async-namespace (def async-namespace
{:obj core-async-namespace {:obj core-async-namespace
@ -109,7 +110,7 @@
'alts! (copy-var async/alts!! core-async-namespace {:name 'alts!}) 'alts! (copy-var async/alts!! core-async-namespace {:name 'alts!})
'go-loop (macrofy 'go-loop go-loop core-async-namespace)}) 'go-loop (macrofy 'go-loop go-loop core-async-namespace)})
(def async-protocols-ns (vars/->SciNamespace 'clojure.core.async.impl.protocols nil)) (def async-protocols-ns (sci/create-ns 'clojure.core.async.impl.protocols nil))
(def async-protocols-namespace (def async-protocols-namespace
{:obj async-protocols-ns {:obj async-protocols-ns

View file

@ -1,10 +1,9 @@
(ns babashka.impl.clojure.zip (ns babashka.impl.clojure.zip
{:no-doc true} {:no-doc true}
(:require [clojure.zip :as zip] (:require [clojure.zip :as zip]
[sci.impl.namespaces :refer [copy-var]] [sci.core :as sci :refer [copy-var]]))
[sci.impl.vars :as vars]))
(def zip-ns (vars/->SciNamespace 'clojure.zip nil)) (def zip-ns (sci/create-ns 'clojure.zip nil))
(def zip-namespace (def zip-namespace
{'zipper (copy-var zip/zipper zip-ns) {'zipper (copy-var zip/zipper zip-ns)

View file

@ -1,10 +1,10 @@
(ns babashka.impl.curl (ns babashka.impl.curl
{:no-doc true} {:no-doc true}
(:require [babashka.curl :as curl] (:require
[sci.impl.namespaces :refer [copy-var]] [babashka.curl :as curl]
[sci.impl.vars :as vars])) [sci.core :as sci :refer [copy-var]]))
(def tns (vars/->SciNamespace 'babashka.curl nil)) (def tns (sci/create-ns 'babashka.curl nil))
(def curl-namespace (def curl-namespace
{'request (copy-var curl/request tns) {'request (copy-var curl/request tns)

View file

@ -1,10 +1,10 @@
(ns babashka.impl.data (ns babashka.impl.data
{:no-doc true} {:no-doc true}
(:require [babashka.impl.clojure.data :as data] (:require
[sci.impl.namespaces :refer [copy-var]] [babashka.impl.clojure.data :as data]
[sci.impl.vars :as vars])) [sci.core :as sci :refer [copy-var]]))
(def data-ns (vars/->SciNamespace 'clojure.data nil)) (def data-ns (sci/create-ns 'clojure.data nil))
(def data-namespace (def data-namespace
{'diff (copy-var data/diff data-ns)}) {'diff (copy-var data/diff data-ns)})

View file

@ -3,8 +3,7 @@
(:refer-clojure :exclude [create-ns]) (:refer-clojure :exclude [create-ns])
(:require (:require
[babashka.impl.protocols :as protocols] [babashka.impl.protocols :as protocols]
[sci.core :as sci :refer [copy-var]] [sci.core :as sci :refer [copy-var]]))
[sci.impl.vars]))
(def datafy-ns (sci/create-ns 'clojure.datafy nil)) (def datafy-ns (sci/create-ns 'clojure.datafy nil))

View file

@ -1,13 +1,15 @@
(ns babashka.impl.patches.datafy (ns babashka.impl.patches.datafy
(:require [babashka.impl.common :refer [ctx]] (:require ;; ensure datafy is loaded, we're going to override its
;; clojure.lang.Namespace implementation for datafy
[babashka.impl.common :refer [ctx]]
[clojure.core.protocols :as p] [clojure.core.protocols :as p]
[clojure.datafy] [clojure.datafy]
;; ensure datafy is loaded, we're going to override its
;; clojure.lang.Namespace implementation for datafy
[clojure.reflect] [clojure.reflect]
[sci.impl.namespaces :refer [sci-ns-name sci-ns-publics sci-ns-imports sci-ns-interns]] [sci.impl.namespaces :refer [sci-ns-imports sci-ns-interns sci-ns-name
sci-ns-publics]]
[sci.impl.vars]) [sci.impl.vars])
(:import [sci.impl.vars SciNamespace])) (:import
[sci.lang Namespace]))
(defn- sortmap [m] (defn- sortmap [m]
(into (sorted-map) m)) (into (sorted-map) m))
@ -29,7 +31,7 @@
(assoc ret :name (-> c .getName symbol) :members (->> members (group-by :name) sortmap))))) (assoc ret :name (-> c .getName symbol) :members (->> members (group-by :name) sortmap)))))
(extend-protocol p/Datafiable (extend-protocol p/Datafiable
SciNamespace Namespace
(datafy [n] (datafy [n]
(with-meta {:name (sci-ns-name n) (with-meta {:name (sci-ns-name n)
:publics (->> n (sci-ns-publics @ctx) sortmap) :publics (->> n (sci-ns-publics @ctx) sortmap)

View file

@ -1,10 +1,9 @@
(ns babashka.impl.tools.cli (ns babashka.impl.tools.cli
{:no-doc true} {:no-doc true}
(:require [clojure.tools.cli :as tools.cli] (:require [clojure.tools.cli :as tools.cli]
[sci.impl.namespaces :refer [copy-var]] [sci.core :as sci :refer [copy-var]]))
[sci.impl.vars :as vars]))
(def cli-ns (vars/->SciNamespace 'clojure.tools.cli nil)) (def cli-ns (sci/create-ns 'clojure.tools.cli nil))
(def tools-cli-namespace (def tools-cli-namespace
{'format-lines (copy-var tools.cli/format-lines cli-ns) {'format-lines (copy-var tools.cli/format-lines cli-ns)