Fix proxy instance check

This commit is contained in:
Michiel Borkent 2021-03-13 18:08:36 +01:00
parent c79d48cdde
commit 0b332431d3
3 changed files with 8 additions and 4 deletions

2
sci

@ -1 +1 @@
Subproject commit bf0fc870e5d9060ea79dd49594487d600bb64571
Subproject commit a10c28f012075a98dedb06f8158341a1b7baea9a

View file

@ -12,8 +12,8 @@
(.getName clazz))
(defn proxy-fn [{:keys [class interfaces protocols methods]}]
(let [interfaces (set (map class-name interfaces))]
(case [(class-name class) interfaces ]
(let [interface-names (set (map class-name interfaces))]
(case [(class-name class) interface-names]
;; This combination is used by pathom3
["clojure.lang.APersistentMap" #{"clojure.lang.IMeta" "clojure.lang.IObj"}]
(proxy [clojure.lang.APersistentMap clojure.lang.IMeta clojure.lang.IObj sci.impl.types.IReified] []

View file

@ -63,6 +63,8 @@
(seq m)
(meta (with-meta m {:a 1}))
(d/datafy m)
(instance? clojure.lang.APersistentMap m)
(instance? java.io.FilenameFilter m)
,])))
(require 'clojure.pprint)
@ -72,5 +74,7 @@
5 3 5 false
'([:a 1] [:b 2] [:c 3])
{:a 1}
{:datafied true}]
{:datafied true}
true
false]
(bb (with-out-str (clojure.pprint/pprint code))))))