aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java')
-rw-r--r--src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java21
1 files changed, 9 insertions, 12 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java b/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java
index 75aa5a3..5981e34 100644
--- a/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java
+++ b/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java
@@ -13,12 +13,17 @@ public class ClassNodeBuilder {
private final ImmutableList.Builder<FieldDeclarationNode> fields;
private Optional<ConstructorNode> constructor;
private final ImmutableList.Builder<MethodNode> methods;
-
- public ClassNodeBuilder(String name) {
- this.name = TypeName.of(name);
+
+ public ClassNodeBuilder(TypeName name) {
+ this.name = name;
this.fields = ImmutableList.builder();
this.constructor = Optional.empty();
this.methods = ImmutableList.builder();
+
+ }
+
+ public ClassNodeBuilder(String name) {
+ this(TypeName.of(name));
}
public ClassNodeBuilder field(String name, TypeName type) {
@@ -30,14 +35,6 @@ 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;
@@ -85,7 +82,7 @@ public class ClassNodeBuilder {
return ClassNode.declareClass(
name,
fields.build(),
- constructor.orElse(constructorBuilder().build()),
+ constructor.orElse(ConstructorNode.DEFAULT),
methods.build());
}