/// <summary> /// 変数宣言ノードの評価 /// </summary> /// <param name="node">変数宣言ノード</param> /// <returns>null</returns> public override object Visit(VarAssignNode node) { var val = Visit(node.Value); VariableStore.SetVar(node.VarName, val); return(null); //変数宣言ステートメントは不要なので捨てる }
/// <summary> /// 構文解析器をエラーリスナーを指定して初期化します。 /// </summary> /// <param name="listener">エラーリスナークラス</param> public MapGrammarParser(ParseErrorListener listener) { VariableStore.ClearVar(); ErrorListener = listener; }
/// <summary> /// 構文解析器を初期化します。 /// </summary> public MapGrammarParser() { VariableStore.ClearVar(); //変数の初期化 ErrorListener = new ParseErrorListener(); }
/// <summary> /// 変数の評価 /// </summary> /// <param name="node">変数ノード</param> /// <returns>変数に対応する値(Double)</returns> public override object Visit(VarNode node) { return(VariableStore.GetVar(node.Key)); }