/// <summary> /// statement : EOL /// | load_namespace EOL /// | program_shorthand EOL /// | declaration EOL /// | expression EOL /// | control /// ; /// </summary> override public Shell.Types.IShellReturnable VisitStatement(ShellParser.StatementContext context) { var ctx_nsLoad = context.load_namespace(); var ctx_progExec = context.program_shorthand(); var ctx_decl = context.declaration(); var ctx_expr = context.expression(); var ctx_ctrl = context.control(); if (ctx_nsLoad != null) { return(VisitLoad_namespace(ctx_nsLoad)); } else if (ctx_progExec != null) { return(VisitProgram_shorthand(ctx_progExec)); } else if (ctx_decl != null) { return(VisitDeclaration(ctx_decl)); } else if (ctx_expr != null) { var ret = VisitExpression(ctx_expr); ret = Utility.GetReturnableValue(ret); return(ret); } else if (ctx_ctrl != null) { return(VisitControl(ctx_ctrl)); } return(defaultReturnValue); }
/// <summary> /// Visit a parse tree produced by <see cref="ShellParser.statement"/>. /// <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 VisitStatement([NotNull] ShellParser.StatementContext context) { return(VisitChildren(context)); }