function | removed v1.9.854 | added v0.0-927 | Edit |
(read-meta rdr _)
(defn read-meta
[rdr _]
(let [m (desugar-meta (read rdr true nil true))]
(when-not (map? m)
(reader-error rdr "Metadata must be Symbol,Keyword,String or Map"))
(let [o (read rdr true nil true)]
(if (satisfies? IWithMeta o)
(with-meta o (merge (meta o) m))
(reader-error rdr "Metadata can only be applied to IWithMetas")))))