这是我的代码(一个例子):
(def foo (.java_method java_object))
(debug "result of method bar() on object foo: " (.bar foo))
我收到警告(foo
属于FooType
Java 类型):
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))