method-sig

added

ns
clojure.core

type
function

(method-sig meth)


        

                ;;;; (method-sig) turns java.lang.reflect.Method into a vector 
;;;; of the form [name (param-types) return-type]

(->> String .getMethods seq (filter #(= (.getName %) "indexOf")))
;;=> (#object[java.lang.reflect.Method 0x4a499a6c "public int java.lang.String.indexOf(java.lang.String,int)"]
;;    #object[java.lang.reflect.Method 0x29b045b3 "public int java.lang.String.indexOf(int)"]
;;    #object[java.lang.reflect.Method 0x55ce8ae4 "public int java.lang.String.indexOf(java.lang.String)"]
;;    #object[java.lang.reflect.Method 0x33a58323 "public int java.lang.String.indexOf(int,int)"])

(->> String .getMethods seq (filter #(= (.getName %) "indexOf")) (method-sig))
;;=> (["indexOf" (java.lang.String int) int]
;;    ["indexOf" (int) int]
;;    ["indexOf" (java.lang.String) int]
;;    ["indexOf" (int int) int])