7
私はオブジェクトに対してメソッドを持っています。ClojureでJavaメソッドの呼び出しを部分的にすることはできますか?
myObject.myMethod(1)
私はClojureの
でこれを呼び出すことができ(.myMethod myObject 1)
私もレキシカル環境
(let [x 1] (.myMethod myObject x))
からの情報を使用して、それを呼び出すことができますが、私はこれは部分的に行うことができますか?例えば。私は現在、匿名関数でこの作品を作ってるんだ、この文脈で.myMethod
:シンボルを解決できません:
(let [myPartial (partial .myMethod myObject)]
(myPartial 1))
これは私
java.lang.RuntimeExceptionを与えます
(let [myThing #(.myMethod myObject %)] (myThing 1))
ただし、この場合は部分的に使用するとよいでしょう。出来ますか?
私は答えがバインディングとディスパッチに関係すると確信していますが、コンパイルと実行中のどこでディスパッチが起こったのかがまだわかりません。
そのことを聞いたことがありません。ありがとう! – xsc
ありがとう@Chiron! – Joe