package xtc.translator.representation;
import java.util.HashMap;
import java.util.Map;
import xtc.tree.GNode;
public class VariableVisitor extends BaseVisitor{
private Map<String, String> variableMap;
public VariableVisitor() {
variableMap = new HashMap<String, String>();
}
public Map<String, String> getVariableMap() {
return variableMap;
}
public void setVariableMap(Map<String, String> variableMap) {
this.variableMap = variableMap;
}
public void visitMethodDeclaration(GNode n) {
visit(n);
}
public void visitFieldDeclaration(GNode n) {
String type = n.getNode(1).getNode(0).getString(0);
String name = n.getNode(2).getNode(0).getString(0);
variableMap.put(name, type);
}
public void visitFormalParameter(GNode n) {
String type = n.getNode(1).getNode(0).getString(0);
String name = n.getString(3);
variableMap.put(name, type);
}
}