aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2015-10-17 17:16:41 +0100
committerMichael Williamson <mike@zwobble.org>2015-10-17 17:16:41 +0100
commit4655cf0dc523484a05f4b648fd87ff9fdd0605ca (patch)
tree1e5fc88072ec3af44568e62bff3d649a935ec16d /src/main/java/org/zwobble/couscous/ast
parenta97acb1a85c588a38a4a8a8b761beddb71cb960a (diff)
Java: read local variable declaration and reference
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast')
-rw-r--r--src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java8
-rw-r--r--src/main/java/org/zwobble/couscous/ast/VariableReferenceNode.java2
2 files changed, 9 insertions, 1 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java b/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
index 6294e38..61fd9a3 100644
--- a/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
+++ b/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
@@ -18,6 +18,14 @@ public class LocalVariableDeclarationNode implements VariableNode, StatementNode
VariableDeclaration declaration;
ExpressionNode initialValue;
+
+ public String getName() {
+ return declaration.getName();
+ }
+
+ public TypeName getType() {
+ return declaration.getType();
+ }
@Override
public <T> T accept(StatementNodeMapper<T> visitor) {
diff --git a/src/main/java/org/zwobble/couscous/ast/VariableReferenceNode.java b/src/main/java/org/zwobble/couscous/ast/VariableReferenceNode.java
index 6fc00f6..a53d099 100644
--- a/src/main/java/org/zwobble/couscous/ast/VariableReferenceNode.java
+++ b/src/main/java/org/zwobble/couscous/ast/VariableReferenceNode.java
@@ -5,7 +5,7 @@ import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper;
import lombok.Value;
-@Value
+@Value(staticConstructor="reference")
public class VariableReferenceNode implements AssignableExpressionNode {
public static VariableReferenceNode reference(VariableNode variable) {
return new VariableReferenceNode(variable.getDeclaration());