From 09ac25334680110bcf492044abb240b13193084f Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 28 Nov 2015 17:48:44 +0000 Subject: Return raw method nodes when reading methods --- src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java') diff --git a/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java b/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java index eafcc3b..80e8eab 100644 --- a/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java +++ b/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java @@ -26,6 +26,14 @@ public class ClassNodeBuilder { return this; } + public ClassNodeBuilder callable(CallableNode callable) { + if (callable instanceof ConstructorNode) { + return constructor((ConstructorNode) callable); + } else { + return method((MethodNode) callable); + } + } + public ClassNodeBuilder constructor(ConstructorNode constructor) { this.constructor = Optional.of(constructor); return this; @@ -36,7 +44,7 @@ public class ClassNodeBuilder { } private MethodBuilder constructorBuilder() { - return new MethodBuilder(builder -> + return new MethodBuilder<>(builder -> ConstructorNode.constructor( builder.arguments.build(), builder.statements.build())); @@ -61,7 +69,7 @@ public class ClassNodeBuilder { } private MethodBuilder methodBuilder(String name, boolean isStatic) { - return new MethodBuilder(builder -> MethodNode.builder(name) + return new MethodBuilder<>(builder -> MethodNode.builder(name) .isStatic(isStatic) .annotations(builder.annotations.build()) .arguments(builder.arguments.build()) -- cgit v1.2.3