これは私のコードです(例):
(def foo (.java_method java_object))
(debug "result of method bar() on object foo: " (.bar foo))
警告が表示されます(Javafoo
のタイプです):FooType
Reflection warning, example/test.clj:2 - call to bar can't be resolved
このタイプのヒントで警告を削除できます。
(def foo (.java_method java_object))
(debug "result of method bar() on object foo: " (.bar ^FooType foo))
これは機能しますが、使用するたびにこのタイプのヒントを実行する必要がありますfoo
。別の解決策はを使用することlet
ですが、それは余分なインデントレベルを作成します。これは避けたいと思います。次のようなことは可能ですか?:
(def foo (.java_method java_object))
(set-type foo FooType)
(debug "result of method bar() on object foo: " (.bar foo))