This fix has some bugs - you let finder but never use it. Adjusted
below:
(defmacro unique?
[name value msg]
(let [finder (symbol (str "by-" (clojure.core/name name)))])
`(let [value# ~value]
(when-not (str/blank? value#)
(when-let [existing# (~finder value#)]
(duplicate existing# ~msg value#)))))
On Oct 5, 6:52 am, "Meikel Brandmeyer (kotarak)" <[email protected]>
wrote:
> Hi,
>
> you have the conversion to the "by-name" function in the wrong level of
> quoting in the macro.
>
> (defmacro unique?
> [name value msg]
> `(let [value# ~value]
> (when-not (str/blank? value#)
> (let [finder# ~(symbol (str "by-" (clojure.core/name name)))]
> (when-let [existing# (existing value#)]
> (duplicate existing# ~msg value#))))))
>
> Sincerely
> Meikel
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en