Clojure中的Java Lambda回调

inv*_*kat 3 java lambda interop jvm clojure

我在clojure中使用Java库,它具有接受回调的功能:

http://home.dv8tion.net:8080/job/JDA/Promoted%20Build/javadoc/net/dv8tion/jda/entities/MessageChannel.html#sendMessageAsync-java.lang.String-java.util.function.Consumer-

如何在clojure中传递此类回调?我尝试了匿名功能,fn但没有用。在Java中使用Java lambdas可以工作。

Ser*_*rCe 6

你可以简单地具体化的接口。

这是一个例子

(def consumer (reify java.util.function.Consumer
                (accept [this t]
                  ; here the impl 
                  )))
Run Code Online (Sandbox Code Playgroud)