You're viewing version 1.2.0 of proxy-name. The latest stable version of Clojure Core is 1.3.0.
1.2.0 Arrow_down_16x16

proxy-name

clojure.core

  • (proxy-name super interfaces)

0 Examples top

Log in to add / edit an example.

See Also top

Log in to add a see also.

Plus_12x12 Minus_12x12 Source clojure/core_proxy.clj:34 top

(defn proxy-name
 {:tag String} 
 [^Class super interfaces]
  (let [inames (into (sorted-set) (map #(.getName ^Class %) interfaces))]
    (apply str (.replace (str *ns*) \- \_) ".proxy"
      (interleave (repeat "$")
        (concat
          [(.getName super)]
          (map #(subs % (inc (.lastIndexOf ^String % "."))) inames)
          [(Integer/toHexString (hash inames))])))))
Vars in clojure.core/proxy-name: *ns* apply concat defn inc interleave let map repeat str subs
Used in 0 other vars

Comments top

No comments for proxy-name. Log in to add a comment.