If it follows Java bean semantics, you can use the `bean` function to view 
it as a map with properties as keys.

user=> (bean (java.util.Date.))
{:day 2, :date 28, :time 1488314343215, :month 1, :seconds 3, :year 117, 
:class java.util.Date, :timezoneOffset 360, :hours 14, :minutes 39}


On Tuesday, February 28, 2017 at 2:12:06 PM UTC-6, Ernesto Garcia wrote:
>
> Hi all,
>
> I am using Java class that acts as a map, but doesn't implement Map. (It's 
> not in my hands to modify it).
>
> I would like to do the usual lookup code:
> (:keyword my-obj)
>
> I can't make the class extend ILookup, as ILookup is an interface, not a 
> protocol.
>
> Do you know of any other way to achieve this?
> Wouldn't it be better if ILookup were a protocol?
>

Yes, it would be better. But this would require rewriting Clojure's lib as 
protocols did not exist when it was written.
 

>
> Thanks,
> Ernesto
>

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

Reply via email to