The subject mostly says it all.  Example:

;;;;;;;;;;;
user=> (ancestors String)
#{java.io.Serializable java.lang.Object java.lang.CharSequence  
java.lang.Comparable}
user=> (ancestors Object)
nil
user=> (derive String ::foo)
nil
user=> (derive Object ::bar)
nil
user=> (isa? String ::foo)
true
user=> (isa? String ::bar)
true
user=> (ancestors String)
#{java.io.Serializable java.lang.Object java.lang.CharSequence :user/ 
foo java.lang.Comparable}
user=> (ancestors Object)
#{:user/bar}
;;;;;;;;;;;

I'd expect that ::bar would be included in the set returned by  
(ancestors String).  A similar interaction involving only keywords:

;;;;;;;;;;
user=> (derive ::p ::gp)
nil
user=> (derive ::c ::p)
nil
user=> (ancestors ::c)
#{:user/p :user/gp}
;;;;;;;;;;

I'll open an issue with a patch if I'm correct in thinking that the  
current behaviour of ancestors isn't correct in not including the tag  
ancestors of superclasses.

- Chas

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