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}
(:require [datascript.core :as d]
[datascript.db :as db]
[sci.impl.namespaces :refer [copy-var]]
[sci.impl.vars :as vars]))
[sci.core :as sci :refer [copy-var]]))
(def datascript-ns (vars/->SciNamespace 'datascript.core nil))
(def datascript-db-ns (vars/->SciNamespace 'datascript.db nil))
(def datascript-ns (sci/create-ns 'datascript.core nil))
(def datascript-db-ns (sci/create-ns 'datascript.db nil))
(def datascript-namespace
{'create-conn (copy-var d/create-conn datascript-ns)

View file

@ -1,12 +1,13 @@
(ns babashka.impl.jdbc
{:no-doc true}
(:require [next.jdbc :as njdbc]
(:require
[next.jdbc :as njdbc]
[next.jdbc.result-set :as rs]
[next.jdbc.sql :as sql]
[sci.impl.namespaces :refer [copy-var macrofy]]
[sci.impl.vars :as vars]))
[sci.core :as sci]
[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
"Given a transactable object, gets a connection and binds it to `sym`,
@ -31,12 +32,12 @@
'transact (copy-var njdbc/transact 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
{'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
{'as-maps (copy-var rs/as-maps rsns)

View file

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

View file

@ -12,7 +12,7 @@
(def xtns (sci/create-ns 'clojure.data.xml.tree nil))
(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)
:else (str ns)))

2
sci

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

View file

@ -1,10 +1,10 @@
(ns babashka.impl.bencode
{:no-doc true}
(:require [bencode.core :as bencode]
[sci.impl.namespaces :refer [copy-var]]
[sci.impl.vars :as vars]))
(:require
[bencode.core :as bencode]
[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
{'read-bencode (copy-var bencode/read-bencode tns)

View file

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

View file

@ -2,7 +2,8 @@
{:no-doc true}
(:require [clojure.core.async :as async]
[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]))
(def ^java.util.concurrent.Executor executor @#'async/thread-macro-executor)
@ -39,7 +40,7 @@
[_ _ 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
{:obj core-async-namespace
@ -109,7 +110,7 @@
'alts! (copy-var async/alts!! core-async-namespace {:name 'alts!})
'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
{:obj async-protocols-ns

View file

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

View file

@ -1,10 +1,10 @@
(ns babashka.impl.curl
{:no-doc true}
(:require [babashka.curl :as curl]
[sci.impl.namespaces :refer [copy-var]]
[sci.impl.vars :as vars]))
(:require
[babashka.curl :as curl]
[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
{'request (copy-var curl/request tns)

View file

@ -1,10 +1,10 @@
(ns babashka.impl.data
{:no-doc true}
(:require [babashka.impl.clojure.data :as data]
[sci.impl.namespaces :refer [copy-var]]
[sci.impl.vars :as vars]))
(:require
[babashka.impl.clojure.data :as data]
[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
{'diff (copy-var data/diff data-ns)})

View file

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

View file

@ -1,13 +1,15 @@
(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.datafy]
;; ensure datafy is loaded, we're going to override its
;; clojure.lang.Namespace implementation for datafy
[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])
(:import [sci.impl.vars SciNamespace]))
(:import
[sci.lang Namespace]))
(defn- sortmap [m]
(into (sorted-map) m))
@ -29,7 +31,7 @@
(assoc ret :name (-> c .getName symbol) :members (->> members (group-by :name) sortmap)))))
(extend-protocol p/Datafiable
SciNamespace
Namespace
(datafy [n]
(with-meta {:name (sci-ns-name n)
:publics (->> n (sci-ns-publics @ctx) sortmap)

View file

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