private void AddDescendantAttributes(XMLList list, XML target) { if (target.IsElement()) { AddMatchingAttributes(list, target); XML[] children = target.GetChildren(); for (int i = 0; i < children.Length; i++) { AddDescendantAttributes(list, children[i]); } } }
internal virtual void AddMatches(XMLList rv, XML target) { if (IsDescendants()) { AddDescendants(rv, target); } else { if (IsAttributeName()) { AddAttributes(rv, target); } else { XML[] children = target.GetChildren(); if (children != null) { for (int i = 0; i < children.Length; i++) { if (this.Matches(children[i])) { rv.AddToList(children[i]); } } } rv.SetTargets(target, this.ToQname()); } } }
private void AddDescendantChildren(XMLList list, XML target) { Rhino.Xmlimpl.XMLName xmlName = this; if (target.IsElement()) { XML[] children = target.GetChildren(); for (int i = 0; i < children.Length; i++) { if (xmlName.Matches(children[i])) { list.AddToList(children[i]); } AddDescendantChildren(list, children[i]); } } }