Open camsaul opened 1 year ago
If you have a namespace that does something like :refer-clojure :exclude [instance?] and use def-map-type in it,
:refer-clojure :exclude [instance?]
def-map-type
(merge instance-of-my-map-type nil)
will break because
def-map-type uses the def-abstract-type AbstractMap which defines cons like this:
def-abstract-type
AbstractMap
cons
https://github.com/clj-commons/potemkin/blob/f22d9725a2203f9c5cab90fc3459da78e7229956/src/potemkin/collections.clj#L68-L79
and the ultimate macroexpansion copies that call to instance? directly, rather than qualifying it as clojure.core/instance?.
instance?
clojure.core/instance?
If you have a namespace that does something like
:refer-clojure :exclude [instance?]
and usedef-map-type
in it,will break because
def-map-type
uses thedef-abstract-type
AbstractMap
which definescons
like this:https://github.com/clj-commons/potemkin/blob/f22d9725a2203f9c5cab90fc3459da78e7229956/src/potemkin/collections.clj#L68-L79
and the ultimate macroexpansion copies that call to
instance?
directly, rather than qualifying it asclojure.core/instance?
.