/// <summary> /// Visit all elements in the given list. /// </summary> /// <param name="node">Attributed element.</param> protected virtual void VisitAttributes(IPropertyCollection node) { var attrs = node.GetAttributes(); if (attrs != null) { for (int i = 0; i < attrs.Count; i++) { var item = attrs[i]; if (item is LangElement element) { VisitElement(element); } else { item?.VisitMe(this); } } } }