System.Xml.XPathNodePointer.DecideXPNodeTypeForTextNodes C# (CSharp) Method

DecideXPNodeTypeForTextNodes() private method

private DecideXPNodeTypeForTextNodes ( XmlNode node ) : XPathNodeType
node XmlNode
return XPathNodeType
        private XPathNodeType DecideXPNodeTypeForTextNodes(XmlNode node)
        {
            //the function can only be called on text like nodes.
            Debug.Assert(XmlDataDocument.IsTextNode(node.NodeType));
            XPathNodeType xnt = XPathNodeType.Whitespace;
            while (node != null)
            {
                switch (node.NodeType)
                {
                    case XmlNodeType.Whitespace:
                        break;
                    case XmlNodeType.SignificantWhitespace:
                        xnt = XPathNodeType.SignificantWhitespace;
                        break;
                    case XmlNodeType.Text:
                    case XmlNodeType.CDATA:
                        return XPathNodeType.Text;
                    default:
                        return xnt;
                }
                node = _doc.SafeNextSibling(node);
            }
            return xnt;
        }