This is an automated email from the ASF dual-hosted git repository.
paulk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
The following commit(s) were added to refs/heads/master by this push:
new 8b9f0132b6 GROOVY-11596: Additional DGM lazy iterator methods (use
helper method)
8b9f0132b6 is described below
commit 8b9f0132b6d42788221e60b266a330907ca8414e
Author: Paul King <[email protected]>
AuthorDate: Thu Apr 3 23:11:01 2025 +1000
GROOVY-11596: Additional DGM lazy iterator methods (use helper method)
---
.../java/org/codehaus/groovy/runtime/DefaultGroovyMethods.java | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git
a/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyMethods.java
b/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyMethods.java
index 75674f050a..90e875ee1e 100644
--- a/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyMethods.java
+++ b/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyMethods.java
@@ -14054,7 +14054,7 @@ public class DefaultGroovyMethods extends
DefaultGroovyMethodsSupport {
public static <T, U> Iterator<U> tapEvery(
@DelegatesTo.Target Iterator<U> self,
int every,
- @DelegatesTo(genericTypeIndex=0)
+ @DelegatesTo(genericTypeIndex = 0, strategy = Closure.DELEGATE_FIRST)
@ClosureParams(FirstParam.FirstGenericType.class) Closure<T> closure) {
return new TapIterator<>(self, closure, every);
}
@@ -14088,7 +14088,7 @@ public class DefaultGroovyMethods extends
DefaultGroovyMethodsSupport {
*/
public static <T, U> Iterator<U> tapEvery(
@DelegatesTo.Target Iterator<U> self,
- @DelegatesTo(genericTypeIndex=0)
+ @DelegatesTo(genericTypeIndex = 0, strategy = Closure.DELEGATE_FIRST)
@ClosureParams(FirstParam.FirstGenericType.class) Closure<T> closure) {
return new TapIterator<>(self, closure, 1);
}
@@ -14116,9 +14116,7 @@ public class DefaultGroovyMethods extends
DefaultGroovyMethodsSupport {
if (!hasNext()) throw new NoSuchElementException();
T next = delegate.next();
if (++index % every == 0) {
- closure.setDelegate(next);
- closure.setResolveStrategy(Closure.DELEGATE_FIRST);
- closure.call(next);
+ callWithDelegateAndParameter(closure, next);
}
return next;
}