aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2015-10-04 20:57:00 +0100
committerMichael Williamson <mike@zwobble.org>2015-10-04 20:57:00 +0100
commitcdf51cdb9b3f8cef5896315496f348d9f7220903 (patch)
tree6dc623930652236499980f46da75547797511045 /src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
parent6e45abd92526df9fce5d263eefed7fcaa400a86d (diff)
Add separate notion of VariableDeclaration
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