Javaコードがリフレクションを使用してClojure関数を「特別」として認識できるように、何らかの方法で特定のClojure関数にタグを付ける必要があります。関数に注釈を追加しようとしましたが、サポートされていないようです。reify
(Java コードが関数オブジェクトを認識できるように)インターフェースの拡張を試みましたIFn
が、Clojure は具体化されたメソッドを を実装するコードとして直接使用するのinvoke
ではなく、Afunction
実際にメソッドを実装します (invoke
実際の関数コードで実際のメソッドにタグを付ける必要があります)。
何か案は?
編集:(通常のリフレクションではなく)ASMライブラリでアクセスできる方法でタグ付けしても問題ありませんが、実際のAFunction
オブジェクトまたはinvoke
メソッドに何らかの形でタグ付けする必要があります。また、実際のAFunction
オブジェクトにアクセスできません。クラスでタグを表示する必要があります。