本文整理汇总了C#中IVisitor.VisitEnter方法的典型用法代码示例。如果您正苦于以下问题:C# IVisitor.VisitEnter方法的具体用法?C# IVisitor.VisitEnter怎么用?C# IVisitor.VisitEnter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IVisitor
的用法示例。
在下文中一共展示了IVisitor.VisitEnter方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Accept
private bool Accept(IVisitor visitor, Stack<int> inStack, Stack<int> resumeStack)
{
if (visitor.VisitEnter(this)) {
int firstChild = 0;
if (resumeStack.Count > 0) {
firstChild = resumeStack.Pop();
if (resumeStack.Count == 0) {
// If this is the node we found last time then start looking at the next one
firstChild++;
}
}
for (int i = firstChild; i < Children.Count(); i++) {
Composite c = Children.ElementAt(i);
if (!c.Accept(visitor, inStack, resumeStack)) {
inStack.Push(i);
break;
}
}
}
return visitor.VisitExit(this);
}