public void Walk(YSyntaxNode node) { if (guardNode == null) { guardNode = node; OnPreWalk(); } if (node is YNamespace) { Visit((YNamespace)node); } else if (node is YClass) { Visit((YClass)node); } else if (node is YMethod) { Visit((YMethod)node); } else if (node is YField) { Visit((YField)node); } foreach (var n in node.Nodes) { Walk(n); } if (guardNode == node) { OnPostWalk(); guardNode = null; } }
public void AddChild(YSyntaxNode node) { _Namespaces.Add(node); }
public virtual void AddChild(YSyntaxNode node) { _Nodes.Add(node); }