On Fri, Apr 16, 2010 at 3:46 PM, Brian Wolf <brw...@gmail.com> wrote:

> Hi, Is it possible to call a multimethod in a map? In this simplified
> example, I just want to increment every element of the array when the
> multimethod is called (my real application is operating on sets of
> hash tables ie database  )
>
>
> (defmulti cc (fn [c v] [(:category c) ]))
>
> (defmethod cc [:toys] [category v ]]   ( inc v))
>
>
> can I do something like this? ( this doesn't work)
>
>  (map (cc{:category :toys}  ) [1 2])
>
> Thanks, Brian


(map #(cc {:category :toys} %) [1 2])

or

(map (fn [x] (cc {:category :toys} x)) [1 2])

is what you want. Untested.

David

-- 
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

Reply via email to