/// <summary> /// The visit subroutine for boolean constants. /// </summary> public override VisitorResult VisitBoolVar([NotNull] HaskellmmParser.BoolVarContext context) { string s = context.GetText(); BoolNode node; if (s == "True") { node = new BoolNode(CreateNodeContext(context), true); } else if (s == "False") { node = new BoolNode(CreateNodeContext(context), false); } else { throw new VisitException(context.Start.Line, context.Start.Column, "Bool was neither True nor False"); } AddExprNode(node); currentNode = FindEarliestParentWithUnfilledChildren(currentNode); return(base.VisitBoolVar(context)); }
/// <summary> /// Visit a parse tree produced by the <c>boolVar</c> /// labeled alternative in <see cref="HaskellmmParser.expr"/>. /// <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 VisitBoolVar([NotNull] HaskellmmParser.BoolVarContext context) { return(VisitChildren(context)); }
/// <summary> /// Exit a parse tree produced by the <c>boolVar</c> /// labeled alternative in <see cref="HaskellmmParser.expr"/>. /// <para>The default implementation does nothing.</para> /// </summary> /// <param name="context">The parse tree.</param> public virtual void ExitBoolVar([NotNull] HaskellmmParser.BoolVarContext context) { }