| 123456789101112131415161718192021222324252627282930313233 |
- //VARValue:top//
- //VARValue:import//
- import java.util.*;
- // <value>VARValue ::= <VAR>
- public class VARValue extends Value /*VARValue:class*/ {
- public static final String $className = "VARValue";
- public static final String $ruleString =
- "<value>VARValue ::= <VAR>";
- public Token var;
- public VARValue(Token var) {
- //VARValue:init//
- this.var = var;
- }
- public static VARValue parse(Scan scn$, Trace trace$) {
- if (trace$ != null)
- trace$ = trace$.nonterm("<value>VARValue", scn$.lno);
- Token var = scn$.match(Token.Match.VAR, trace$);
- return new VARValue(var);
- }
- public int eval() {
- if (!Program.hshmap.containsKey(var.toString()))
- throw new RuntimeException("Undefined variable: " + var);
- return Program.hshmap.get(var.toString());
- }
- //VARValue//
- }
|