我有一个定义为闭包的类:
void everyPixel( closure ){
for( def x : 0..width-1 )
for( def y : 0..height-1 )
closure( x, y )
}
但是,如果我将@CompileStatic
注释应用于它,它将无法编译(在我添加闭包之前它已经编译),并带有以下消息:
Groovyc:[静态类型检查] - 找不到匹配的方法 java.lang.Object#call(java.lang.Integer, java.lang.Integer)。请检查声明的类型是否正确以及方法是否存在。
如何为此创建类型签名以便静态编译?到目前为止,我在谷歌上的所有点击都说如何传递一个闭包,而不是如何定义一个接受一个闭包的方法。:-/