public override void ExitDivide(lisp_gammarParser.DivideContext context) { if (!_FuncExp) { if (!_IfExp) { int a = 0, b = 0; if (int.TryParse(context.GetChild(2).GetText(), out a)) { a = Convert.ToInt32(context.GetChild(2).GetText()); } else { ParsingMessage.ErrorCode(4, context); } if (int.TryParse(context.GetChild(3).GetText(), out b)) { b = Convert.ToInt32(context.GetChild(3).GetText()); } else { ParsingMessage.ErrorCode(4, context); } ClearCtx(context); AddCtx(context, (a / b).ToString()); } } base.ExitDivide(context); }
/// <summary> /// Exit a parse tree produced by <see cref="lisp_gammarParser.divide"/>. /// <para>The default implementation does nothing.</para> /// </summary> /// <param name="context">The parse tree.</param> public virtual void ExitDivide([NotNull] lisp_gammarParser.DivideContext context) { }
/// <summary> /// Visit a parse tree produced by <see cref="lisp_gammarParser.divide"/>. /// <para> /// The default implementation returns the result of calling <see cref="AbstractParseTreeVisitor{Result}.VisitChildren(IRuleNode)"/> /// on <paramref name="context"/>. /// </para> /// </summary> /// <param name="context">The parse tree.</param> /// <return>The visitor result.</return> public virtual Result VisitDivide([NotNull] lisp_gammarParser.DivideContext context) { return(VisitChildren(context)); }