Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ Compare()

XmlNodeOrder System.Xml.DocumentXPathNavigator.Compare ( XmlNode node1,
XmlNode node2 )
inlineprivate

Definition at line 1173 of file DocumentXPathNavigator.cs.

1174 {
1175 if (node1.XPNodeType == XPathNodeType.Attribute)
1176 {
1177 if (node2.XPNodeType == XPathNodeType.Attribute)
1178 {
1179 XmlElement ownerElement = ((XmlAttribute)node1).OwnerElement;
1180 if (ownerElement.HasAttributes)
1181 {
1182 XmlAttributeCollection attributes = ownerElement.Attributes;
1183 for (int i = 0; i < attributes.Count; i++)
1184 {
1185 XmlAttribute xmlAttribute = attributes[i];
1186 if (xmlAttribute == node1)
1187 {
1188 return XmlNodeOrder.Before;
1189 }
1190 if (xmlAttribute == node2)
1191 {
1192 return XmlNodeOrder.After;
1193 }
1194 }
1195 }
1196 return XmlNodeOrder.Unknown;
1197 }
1198 return XmlNodeOrder.Before;
1199 }
1200 if (node2.XPNodeType == XPathNodeType.Attribute)
1201 {
1202 return XmlNodeOrder.After;
1203 }
1204 XmlNode nextSibling = node1.NextSibling;
1205 while (nextSibling != null && nextSibling != node2)
1206 {
1207 nextSibling = nextSibling.NextSibling;
1208 }
1209 if (nextSibling == null)
1210 {
1211 return XmlNodeOrder.After;
1212 }
1213 return XmlNodeOrder.Before;
1214 }

References System.Xml.XmlAttributeCollection.Count.

Referenced by System.Xml.DocumentXPathNavigator.ComparePosition().