summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/clj/clojure/core.clj14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/clj/clojure/core.clj b/src/clj/clojure/core.clj
index 6e5da291..420270ae 100644
--- a/src/clj/clojure/core.clj
+++ b/src/clj/clojure/core.clj
@@ -3903,8 +3903,8 @@
(:require (clojure.contrib sql sql.tests))
(:use (my.lib this that))
(:import (java.util Date Timer Random)
- (java.sql Connection Statement)))"
-
+ (java.sql Connection Statement)))"
+ {:arglists '([name docstring? attr-map? & references])}
[name & references]
(let [process-reference
(fn [[kname & args]]
@@ -3913,8 +3913,12 @@
docstring (when (string? (first references)) (first references))
references (if docstring (next references) references)
name (if docstring
- (with-meta name (assoc (meta name)
- :doc docstring))
+ (vary-meta name assoc :doc docstring)
+ name)
+ metadata (when (map? (first references)) (first references))
+ references (if metadata (next references) references)
+ name (if metadata
+ (vary-meta name merge metadata)
name)
gen-class-clause (first (filter #(= :gen-class (first %)) references))
gen-class-call
@@ -4755,4 +4759,4 @@
(recur (conj ret (first items)) (next items))
ret)))))
- \ No newline at end of file
+