From 5af89551a9119bdc44068d80eb675d123fa35662 Mon Sep 17 00:00:00 2001 From: miks1965 Date: Mon, 10 Aug 2015 20:13:13 +0300 Subject: [PATCH] BaseEnterExitVisitor --- SyntaxTree/tree/BaseEnterExitVisitor.cs | 27 +++++++++++++++++++ .../ParsePABC1/ProcessYieldsCapturedVars.cs | 3 ++- 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 SyntaxTree/tree/BaseEnterExitVisitor.cs diff --git a/SyntaxTree/tree/BaseEnterExitVisitor.cs b/SyntaxTree/tree/BaseEnterExitVisitor.cs new file mode 100644 index 000000000..123d5e9c5 --- /dev/null +++ b/SyntaxTree/tree/BaseEnterExitVisitor.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +using PascalABCCompiler; +using PascalABCCompiler.SyntaxTree; + +namespace PascalABCCompiler.SyntaxTree +{ + public class BaseEnterExitVisitor: WalkingVisitorNew + { + public BaseEnterExitVisitor() + { + OnEnter = Enter; + OnLeave = Exit; + } + + public virtual void Enter(syntax_tree_node st) + { + } + public virtual void Exit(syntax_tree_node st) + { + } + } +} diff --git a/_ParsePABC1/ParsePABC1/ProcessYieldsCapturedVars.cs b/_ParsePABC1/ParsePABC1/ProcessYieldsCapturedVars.cs index 83dcb65ea..c37864255 100644 --- a/_ParsePABC1/ParsePABC1/ProcessYieldsCapturedVars.cs +++ b/_ParsePABC1/ParsePABC1/ProcessYieldsCapturedVars.cs @@ -54,7 +54,8 @@ namespace ParsePABC1 foreach (var m in fields) cm.Add(m); cm.Add(pd); - return new type_declaration(newClassName(), SyntaxTreeBuilder.BuildClassDefinition(cm), SyntaxTreeBuilder.BuildGenSC); + var td = new type_declaration(newClassName(), SyntaxTreeBuilder.BuildClassDefinition(cm), SyntaxTreeBuilder.BuildGenSC); + return td; } public override void visit(procedure_definition pd)