(defn who-specializes [class]
(letfn [(xref-lisp [sym] ; see find-definitions-for-emacs
(if-let [meta (and sym (meta sym))]
(if-let [path (slime-find-file (:file meta))]
`((~(str "(method " (:name meta) ")")
(:location
~path
(:line ~(:line meta))
nil)))
`((~(str (:name meta))
(:error "Source definition not found."))))
`((~(str "(method " (.getName sym) ")")
(:error ~(format "%s - definition not found." sym))))))]
(let [methods (try (. class getMethods)
(catch java.lang.IllegalArgumentException e nil)
(catch java.lang.NullPointerException e nil))]
(map xref-lisp methods))))
Used in 0 other vars
Comments top
No comments for who-specializes. Log in to add a comment.