I tried to write a macro that wraps the code a function with a try/catch statement. It works fine for regular functions but it doesn't work for multimethods. I understand the reason, but I don't know how to fix it.
Here is my code: (defmacro deftry [name args & body] " https://groups.google.com/forum/#!topic/clojurescript/To0AnQVC3lg" `(defn ~name ~args (try ~@body (catch Error e# (println "error caught:" e#))))) Usage: 1. regular function => it works fine (deftry foo [] (throw (Error. "foo"))) 2. multimethods => it breaks (deftry foo ([a] 3) ([] 5)) -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.