aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/MethodNode.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2015-11-28 19:43:34 +0000
committerMichael Williamson <mike@zwobble.org>2015-11-28 19:43:34 +0000
commit5cda2705b321cbea53249e181921195326c5fd55 (patch)
treea04f24d41daca7d5fb27dd0368b778a6f7e5ca7d /src/main/java/org/zwobble/couscous/ast/MethodNode.java
parent05867c4658abaa0fc7ca7c0139e2cae4522e7057 (diff)
Simplify generation of anonymous classes
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast/MethodNode.java')
-rw-r--r--src/main/java/org/zwobble/couscous/ast/MethodNode.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/MethodNode.java b/src/main/java/org/zwobble/couscous/ast/MethodNode.java
index 3e97a36..5763b11 100644
--- a/src/main/java/org/zwobble/couscous/ast/MethodNode.java
+++ b/src/main/java/org/zwobble/couscous/ast/MethodNode.java
@@ -4,6 +4,7 @@ import com.google.common.collect.ImmutableList;
import org.zwobble.couscous.ast.visitors.NodeMapper;
import java.util.List;
+import java.util.function.Function;
public class MethodNode implements CallableNode {
public static Builder staticMethod(String name) {
@@ -115,6 +116,10 @@ public class MethodNode implements CallableNode {
return body;
}
+ public MethodNode mapBody(Function<List<StatementNode>, List<StatementNode>> function) {
+ return new MethodNode(annotations, isStatic, name, arguments, function.apply(body));
+ }
+
@Override
public <T> T accept(NodeMapper<T> visitor) {
return visitor.visit(this);