我有点困惑,我是只能在由Java类表示的clojure结构上使用clojure多方法,还是可以将多方法基于结构或其他属性进行调度?
发布于 2011-01-02 06:20:55
构建在第一个或唯一参数的类上调度的多方法是很常见的。在这种情况下,“类”可以是一个Java类、一个记录(defrecord生成一个Java类),甚至是一个内部Clojure类型,比如ISeq。
您还可以在任意函数上分派传递给该函数的参数。例如,如果你愿意,你可以计算一个函数并对一个关键字进行调度。
发布于 2011-01-02 05:45:29
您可以在参数的任意函数上分派多方法(该函数作为第二个参数传递给defmulti。http://clojure.org/multimethods提供了更多详细信息。
发布于 2011-01-02 07:57:07
您可以在上对您选择的任何函数进行多方法调度。
https://stackoverflow.com/questions/4575539
复制相似问题