The deftype-is-not-a-map change (#245) gated map? on jrec-record?, so only a defrecord was map?. But a deftype that implements clojure.lang.IPersistentMap is map? on the JVM — clojure.core.cache's caches are exactly that, and its TTL factory asserts (map? base) on an LRUCache passed as the base (its suite went 1314 -> 2 errors). map? now also covers a deftype whose without/dissoc method is registered — the IPersistentMap-distinctive op a vector or set lacks. An opaque deftype (RawString) stays non-map?; a defrecord stays both. Guards added to unit.edn (jolt-side: a full IPersistentMap impl will not compile on the JVM corpus oracle). |
||
|---|---|---|
| .. | ||
| chez | ||
| conformance | ||