prefers

added
1.0

ns
clojure.core

type
function

(prefers multifn)

Given a multimethod, returns a map of preferred value -> set of other values

                (def m {:os ::osx})

(defmulti ex :os)

(defmethod ex ::unix
  [_]
  "unix")

(derive ::osx ::unix)

(defmethod ex ::bsd
  [_]
  "bsd")

(derive ::osx ::bsd)

(prefer-method ex ::unix ::bsd)

(prefers ex)
;;=> {:user/unix #{:user/bsd}}