aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-10-30 23:55:19 +0000
committerMichael Williamson <mike@zwobble.org>2016-10-30 23:56:10 +0000
commit1ef4865a040ae94b69a5c4dabcb5dca837cae67c (patch)
tree581f7a0fdc72e616f748333fc5d061c5b1e01fd8 /src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java
parent62ea20e20ed1c0d6b2564f8fff862d380da15fce (diff)
Defer generation of classes for lambdas
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java')
-rw-r--r--src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java b/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java
index 4d39b01..71c226a 100644
--- a/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java
+++ b/src/main/java/org/zwobble/couscous/ast/ClassNodeBuilder.java
@@ -5,6 +5,7 @@ import com.google.common.collect.ImmutableSet;
import org.zwobble.couscous.ast.identifiers.Identifier;
import org.zwobble.couscous.types.ScalarType;
import org.zwobble.couscous.types.Type;
+import org.zwobble.couscous.types.TypeParameter;
import org.zwobble.couscous.types.Types;
import java.util.List;
@@ -46,6 +47,11 @@ public class ClassNodeBuilder {
return this;
}
+ public ClassNodeBuilder addTypeParameter(TypeParameter typeParameter) {
+ this.typeParameters.add(formalTypeParameter(typeParameter));
+ return this;
+ }
+
public ClassNodeBuilder addSuperType(String type) {
this.superTypes.add(ScalarType.topLevel(type));
return this;
@@ -55,7 +61,7 @@ public class ClassNodeBuilder {
return field(FieldDeclarationNode.staticField(name, type));
}
- public ClassNodeBuilder field(String name, ScalarType type) {
+ public ClassNodeBuilder field(String name, Type type) {
return field(FieldDeclarationNode.field(name, type));
}