private void LogAreaElements(IList <AreaElement> elements, StringBuilder builder, int deep) { for (int i = 0; i < elements.Count; i++) { var element = elements[i]; var visitor = new LogElementVisitor(builder, deep, i == elements.Count - 1); element.Accept(visitor); } }
public void Handle(Algorithm setting) { _builder.AppendFormat("{0}{3} {1}: {2}", _ident, setting.Key, setting.Name, _treeSign); _builder.AppendLine(); var visitor = new LogElementVisitor(_builder, _deep + 1, false); for (int i = 0; i < setting.Settings.Count; i++) { if (i == setting.Settings.Count - 1) { var visitorLast = new LogElementVisitor(_builder, _deep + 1, true); setting.Settings[i].Accept(visitorLast); } else { setting.Settings[i].Accept(visitor); } } }