(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])