aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java')
-rw-r--r--src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java b/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
index 880a7fd..cf6c5f0 100644
--- a/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
+++ b/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
@@ -3,13 +3,21 @@ package org.zwobble.couscous.ast;
import org.zwobble.couscous.ast.visitors.StatementNodeVisitor;
import org.zwobble.couscous.values.TypeReference;
+import static org.zwobble.couscous.ast.VariableDeclaration.var;
+
import lombok.Value;
@Value(staticConstructor="localVariableDeclaration")
public class LocalVariableDeclarationNode implements VariableNode, StatementNode {
- int id;
- TypeReference type;
- String name;
+ public static LocalVariableDeclarationNode localVariableDeclaration(
+ int id,
+ String name,
+ TypeReference type,
+ ExpressionNode initialValue) {
+ return localVariableDeclaration(var(id, name, type), initialValue);
+ }
+
+ VariableDeclaration declaration;
ExpressionNode initialValue;
@Override