/// <summary> /// Visit a parse tree produced by the <c>progAST</c> /// labeled alternative in <see cref="ParserProyecto.program"/>. /// </summary> /// <param name="context">The parse tree.</param> /// <return>The visitor result.</return> public override Object VisitProgAST([NotNull] ParserProyecto.ProgASTContext context) { printtab(cont); print(contenedor, context.GetType().Name, true); cont++; print(contenedor, context.Class().GetText(), true); print(contenedor, context.Ident().GetText(), true); if (context.constDecl() != null) { Visit(context.constDecl()); } else if (context.varDecl() != null) { Visit(context.varDecl()); } else if (context.classDecl() != null) { Visit(context.classDecl()); } print(contenedor, context.CorIZQ().GetText(), true); for (int i = 0; i <= context.methodDecl().Length - 1; i++) { Visit(context.methodDecl(0)); } print(contenedor, context.CorDER().GetText(), true); cont--; return(null); }
/// <summary> /// Exit a parse tree produced by the <c>progAST</c> /// labeled alternative in <see cref="ParserProyecto.program"/>. /// <para>The default implementation does nothing.</para> /// </summary> /// <param name="context">The parse tree.</param> public virtual void ExitProgAST([NotNull] ParserProyecto.ProgASTContext context) { }
/// <summary> /// Visit a parse tree produced by the <c>progAST</c> /// labeled alternative in <see cref="ParserProyecto.program"/>. /// <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 VisitProgAST([NotNull] ParserProyecto.ProgASTContext context) { return(VisitChildren(context)); }