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

◆ MoveToFollowing() [5/6]

override bool System.Xml.DocumentXPathNavigator.MoveToFollowing ( XPathNodeType type,
XPathNavigator end )
inline

Definition at line 964 of file DocumentXPathNavigator.cs.

965 {
966 XmlNode xmlNode = null;
968 if (documentXPathNavigator != null)
969 {
970 if (_document != documentXPathNavigator._document)
971 {
972 return false;
973 }
974 XmlNodeType nodeType = documentXPathNavigator._source.NodeType;
975 if (nodeType == XmlNodeType.Attribute)
976 {
978 if (!documentXPathNavigator.MoveToNonDescendant())
979 {
980 return false;
981 }
982 }
984 }
986 if (contentKindMask == 0)
987 {
988 return false;
989 }
990 XmlNode xmlNode2 = _source;
991 switch (xmlNode2.NodeType)
992 {
993 case XmlNodeType.Attribute:
994 xmlNode2 = ((XmlAttribute)xmlNode2).OwnerElement;
995 if (xmlNode2 == null)
996 {
997 return false;
998 }
999 break;
1000 case XmlNodeType.Text:
1001 case XmlNodeType.CDATA:
1002 case XmlNodeType.Whitespace:
1003 case XmlNodeType.SignificantWhitespace:
1005 break;
1006 }
1007 do
1008 {
1009 XmlNode firstChild = xmlNode2.FirstChild;
1010 if (firstChild != null)
1011 {
1013 }
1014 else
1015 {
1016 XmlNode nextSibling;
1017 while (true)
1018 {
1019 nextSibling = xmlNode2.NextSibling;
1020 if (nextSibling != null)
1021 {
1022 break;
1023 }
1024 XmlNode parentNode = xmlNode2.ParentNode;
1025 if (parentNode != null)
1026 {
1027 xmlNode2 = parentNode;
1028 continue;
1029 }
1030 return false;
1031 }
1033 }
1034 if (xmlNode2 == xmlNode)
1035 {
1036 return false;
1037 }
1038 }
1039 while (((1 << (int)xmlNode2.XPNodeType) & contentKindMask) == 0);
1040 _source = xmlNode2;
1041 return true;
1042 }
DocumentXPathNavigator(XmlDocument document, XmlNode node)
static int GetContentKindMask(XPathNodeType type)

References System.Xml.DocumentXPathNavigator.DocumentXPathNavigator(), System.Xml.DocumentXPathNavigator._document, System.Xml.DocumentXPathNavigator._source, System.Xml.Dictionary, System.Xml.XPath.XPathNavigator.GetContentKindMask(), System.Xml.DocumentXPathNavigator.TextEnd(), and System.type.